hischool.js 0.0.1

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 (369) hide show
  1. package/README.md +41 -0
  2. package/lib/cjs/Client.d.ts +166 -0
  3. package/lib/cjs/Client.d.ts.map +1 -0
  4. package/lib/cjs/Client.js +221 -0
  5. package/lib/cjs/api/baseURL.d.ts +2 -0
  6. package/lib/cjs/api/baseURL.d.ts.map +1 -0
  7. package/lib/cjs/api/baseURL.js +5 -0
  8. package/lib/cjs/api/index.d.ts +177 -0
  9. package/lib/cjs/api/index.d.ts.map +1 -0
  10. package/lib/cjs/api/index.js +150 -0
  11. package/lib/cjs/api/params.d.ts +285 -0
  12. package/lib/cjs/api/params.d.ts.map +1 -0
  13. package/lib/cjs/api/params.js +194 -0
  14. package/lib/cjs/api/routes.d.ts +1089 -0
  15. package/lib/cjs/api/routes.d.ts.map +1 -0
  16. package/lib/cjs/api/routes.js +2 -0
  17. package/lib/cjs/api/schema.d.ts +4705 -0
  18. package/lib/cjs/api/schema.d.ts.map +1 -0
  19. package/lib/cjs/api/schema.js +2 -0
  20. package/lib/cjs/api/types.d.ts +131 -0
  21. package/lib/cjs/api/types.d.ts.map +1 -0
  22. package/lib/cjs/api/types.js +2 -0
  23. package/lib/cjs/classes/BannedUser.d.ts +18 -0
  24. package/lib/cjs/classes/BannedUser.d.ts.map +1 -0
  25. package/lib/cjs/classes/BannedUser.js +21 -0
  26. package/lib/cjs/classes/Bot.d.ts +82 -0
  27. package/lib/cjs/classes/Bot.d.ts.map +1 -0
  28. package/lib/cjs/classes/Bot.js +145 -0
  29. package/lib/cjs/classes/Channel.d.ts +465 -0
  30. package/lib/cjs/classes/Channel.d.ts.map +1 -0
  31. package/lib/cjs/classes/Channel.js +599 -0
  32. package/lib/cjs/classes/ChannelUnread.d.ts +27 -0
  33. package/lib/cjs/classes/ChannelUnread.d.ts.map +1 -0
  34. package/lib/cjs/classes/ChannelUnread.js +50 -0
  35. package/lib/cjs/classes/ChannelWebhook.d.ts +53 -0
  36. package/lib/cjs/classes/ChannelWebhook.d.ts.map +1 -0
  37. package/lib/cjs/classes/ChannelWebhook.js +113 -0
  38. package/lib/cjs/classes/Emoji.d.ts +57 -0
  39. package/lib/cjs/classes/Emoji.d.ts.map +1 -0
  40. package/lib/cjs/classes/Emoji.js +104 -0
  41. package/lib/cjs/classes/File.d.ts +67 -0
  42. package/lib/cjs/classes/File.d.ts.map +1 -0
  43. package/lib/cjs/classes/File.js +102 -0
  44. package/lib/cjs/classes/Invite.d.ts +60 -0
  45. package/lib/cjs/classes/Invite.d.ts.map +1 -0
  46. package/lib/cjs/classes/Invite.js +91 -0
  47. package/lib/cjs/classes/MFA.d.ts +83 -0
  48. package/lib/cjs/classes/MFA.d.ts.map +1 -0
  49. package/lib/cjs/classes/MFA.js +196 -0
  50. package/lib/cjs/classes/Message.d.ts +484 -0
  51. package/lib/cjs/classes/Message.d.ts.map +1 -0
  52. package/lib/cjs/classes/Message.js +341 -0
  53. package/lib/cjs/classes/MessageEmbed.d.ts +122 -0
  54. package/lib/cjs/classes/MessageEmbed.d.ts.map +1 -0
  55. package/lib/cjs/classes/MessageEmbed.js +181 -0
  56. package/lib/cjs/classes/PublicBot.d.ts +28 -0
  57. package/lib/cjs/classes/PublicBot.d.ts.map +1 -0
  58. package/lib/cjs/classes/PublicBot.js +60 -0
  59. package/lib/cjs/classes/PublicInvite.d.ts +57 -0
  60. package/lib/cjs/classes/PublicInvite.d.ts.map +1 -0
  61. package/lib/cjs/classes/PublicInvite.js +104 -0
  62. package/lib/cjs/classes/Server.d.ts +473 -0
  63. package/lib/cjs/classes/Server.d.ts.map +1 -0
  64. package/lib/cjs/classes/Server.js +585 -0
  65. package/lib/cjs/classes/ServerBan.d.ts +26 -0
  66. package/lib/cjs/classes/ServerBan.d.ts.map +1 -0
  67. package/lib/cjs/classes/ServerBan.js +44 -0
  68. package/lib/cjs/classes/ServerMember.d.ts +138 -0
  69. package/lib/cjs/classes/ServerMember.d.ts.map +1 -0
  70. package/lib/cjs/classes/ServerMember.js +234 -0
  71. package/lib/cjs/classes/Session.d.ts +45 -0
  72. package/lib/cjs/classes/Session.d.ts.map +1 -0
  73. package/lib/cjs/classes/Session.js +94 -0
  74. package/lib/cjs/classes/SystemMessage.d.ts +127 -0
  75. package/lib/cjs/classes/SystemMessage.d.ts.map +1 -0
  76. package/lib/cjs/classes/SystemMessage.js +172 -0
  77. package/lib/cjs/classes/User.d.ts +203 -0
  78. package/lib/cjs/classes/User.d.ts.map +1 -0
  79. package/lib/cjs/classes/User.js +299 -0
  80. package/lib/cjs/classes/UserProfile.d.ts +23 -0
  81. package/lib/cjs/classes/UserProfile.d.ts.map +1 -0
  82. package/lib/cjs/classes/UserProfile.js +35 -0
  83. package/lib/cjs/classes/index.d.ts +21 -0
  84. package/lib/cjs/classes/index.d.ts.map +1 -0
  85. package/lib/cjs/classes/index.js +36 -0
  86. package/lib/cjs/collections/AccountCollection.d.ts +91 -0
  87. package/lib/cjs/collections/AccountCollection.d.ts.map +1 -0
  88. package/lib/cjs/collections/AccountCollection.js +150 -0
  89. package/lib/cjs/collections/BotCollection.d.ts +39 -0
  90. package/lib/cjs/collections/BotCollection.d.ts.map +1 -0
  91. package/lib/cjs/collections/BotCollection.js +89 -0
  92. package/lib/cjs/collections/ChannelCollection.d.ts +39 -0
  93. package/lib/cjs/collections/ChannelCollection.d.ts.map +1 -0
  94. package/lib/cjs/collections/ChannelCollection.js +93 -0
  95. package/lib/cjs/collections/ChannelUnreadCollection.d.ts +24 -0
  96. package/lib/cjs/collections/ChannelUnreadCollection.d.ts.map +1 -0
  97. package/lib/cjs/collections/ChannelUnreadCollection.js +56 -0
  98. package/lib/cjs/collections/ChannelWebhookCollection.d.ts +29 -0
  99. package/lib/cjs/collections/ChannelWebhookCollection.d.ts.map +1 -0
  100. package/lib/cjs/collections/ChannelWebhookCollection.js +69 -0
  101. package/lib/cjs/collections/Collection.d.ts +153 -0
  102. package/lib/cjs/collections/Collection.d.ts.map +1 -0
  103. package/lib/cjs/collections/Collection.js +170 -0
  104. package/lib/cjs/collections/EmojiCollection.d.ts +27 -0
  105. package/lib/cjs/collections/EmojiCollection.d.ts.map +1 -0
  106. package/lib/cjs/collections/EmojiCollection.js +67 -0
  107. package/lib/cjs/collections/MessageCollection.d.ts +28 -0
  108. package/lib/cjs/collections/MessageCollection.d.ts.map +1 -0
  109. package/lib/cjs/collections/MessageCollection.js +69 -0
  110. package/lib/cjs/collections/ServerCollection.d.ts +36 -0
  111. package/lib/cjs/collections/ServerCollection.d.ts.map +1 -0
  112. package/lib/cjs/collections/ServerCollection.js +96 -0
  113. package/lib/cjs/collections/ServerMemberCollection.d.ts +45 -0
  114. package/lib/cjs/collections/ServerMemberCollection.d.ts.map +1 -0
  115. package/lib/cjs/collections/ServerMemberCollection.js +95 -0
  116. package/lib/cjs/collections/SessionCollection.d.ts +27 -0
  117. package/lib/cjs/collections/SessionCollection.d.ts.map +1 -0
  118. package/lib/cjs/collections/SessionCollection.js +63 -0
  119. package/lib/cjs/collections/UserCollection.d.ts +31 -0
  120. package/lib/cjs/collections/UserCollection.d.ts.map +1 -0
  121. package/lib/cjs/collections/UserCollection.js +81 -0
  122. package/lib/cjs/collections/index.d.ts +12 -0
  123. package/lib/cjs/collections/index.d.ts.map +1 -0
  124. package/lib/cjs/collections/index.js +38 -0
  125. package/lib/cjs/events/EventClient.d.ts +89 -0
  126. package/lib/cjs/events/EventClient.d.ts.map +1 -0
  127. package/lib/cjs/events/EventClient.js +186 -0
  128. package/lib/cjs/events/index.d.ts +18 -0
  129. package/lib/cjs/events/index.d.ts.map +1 -0
  130. package/lib/cjs/events/index.js +20 -0
  131. package/lib/cjs/events/v1.d.ts +214 -0
  132. package/lib/cjs/events/v1.d.ts.map +1 -0
  133. package/lib/cjs/events/v1.js +502 -0
  134. package/lib/cjs/hydration/bot.d.ts +21 -0
  135. package/lib/cjs/hydration/bot.d.ts.map +1 -0
  136. package/lib/cjs/hydration/bot.js +31 -0
  137. package/lib/cjs/hydration/channel.d.ts +25 -0
  138. package/lib/cjs/hydration/channel.d.ts.map +1 -0
  139. package/lib/cjs/hydration/channel.js +40 -0
  140. package/lib/cjs/hydration/channelUnread.d.ts +11 -0
  141. package/lib/cjs/hydration/channelUnread.d.ts.map +1 -0
  142. package/lib/cjs/hydration/channelUnread.js +19 -0
  143. package/lib/cjs/hydration/channelWebhook.d.ts +12 -0
  144. package/lib/cjs/hydration/channelWebhook.d.ts.map +1 -0
  145. package/lib/cjs/hydration/channelWebhook.js +21 -0
  146. package/lib/cjs/hydration/emoji.d.ts +13 -0
  147. package/lib/cjs/hydration/emoji.d.ts.map +1 -0
  148. package/lib/cjs/hydration/emoji.js +18 -0
  149. package/lib/cjs/hydration/index.d.ts +1404 -0
  150. package/lib/cjs/hydration/index.d.ts.map +1 -0
  151. package/lib/cjs/hydration/index.js +68 -0
  152. package/lib/cjs/hydration/message.d.ts +25 -0
  153. package/lib/cjs/hydration/message.d.ts.map +1 -0
  154. package/lib/cjs/hydration/message.js +48 -0
  155. package/lib/cjs/hydration/server.d.ts +31 -0
  156. package/lib/cjs/hydration/server.d.ts.map +1 -0
  157. package/lib/cjs/hydration/server.js +44 -0
  158. package/lib/cjs/hydration/serverMember.d.ts +14 -0
  159. package/lib/cjs/hydration/serverMember.d.ts.map +1 -0
  160. package/lib/cjs/hydration/serverMember.js +21 -0
  161. package/lib/cjs/hydration/session.d.ts +8 -0
  162. package/lib/cjs/hydration/session.d.ts.map +1 -0
  163. package/lib/cjs/hydration/session.js +13 -0
  164. package/lib/cjs/hydration/user.d.ts +43 -0
  165. package/lib/cjs/hydration/user.d.ts.map +1 -0
  166. package/lib/cjs/hydration/user.js +53 -0
  167. package/lib/cjs/index.d.ts +9 -0
  168. package/lib/cjs/index.d.ts.map +1 -0
  169. package/lib/cjs/index.js +43 -0
  170. package/lib/cjs/lib/merge.d.ts +15 -0
  171. package/lib/cjs/lib/merge.d.ts.map +1 -0
  172. package/lib/cjs/lib/merge.js +2 -0
  173. package/lib/cjs/lib/regex.d.ts +13 -0
  174. package/lib/cjs/lib/regex.d.ts.map +1 -0
  175. package/lib/cjs/lib/regex.js +15 -0
  176. package/lib/cjs/permissions/calculator.d.ts +19 -0
  177. package/lib/cjs/permissions/calculator.d.ts.map +1 -0
  178. package/lib/cjs/permissions/calculator.js +136 -0
  179. package/lib/cjs/permissions/definitions.d.ts +73 -0
  180. package/lib/cjs/permissions/definitions.d.ts.map +1 -0
  181. package/lib/cjs/permissions/definitions.js +124 -0
  182. package/lib/cjs/storage/ObjectStorage.d.ts +28 -0
  183. package/lib/cjs/storage/ObjectStorage.d.ts.map +1 -0
  184. package/lib/cjs/storage/ObjectStorage.js +41 -0
  185. package/lib/esm/Client.d.ts +166 -0
  186. package/lib/esm/Client.d.ts.map +1 -0
  187. package/lib/esm/Client.js +214 -0
  188. package/lib/esm/api/baseURL.d.ts +2 -0
  189. package/lib/esm/api/baseURL.d.ts.map +1 -0
  190. package/lib/esm/api/baseURL.js +2 -0
  191. package/lib/esm/api/index.d.ts +177 -0
  192. package/lib/esm/api/index.d.ts.map +1 -0
  193. package/lib/esm/api/index.js +139 -0
  194. package/lib/esm/api/params.d.ts +285 -0
  195. package/lib/esm/api/params.d.ts.map +1 -0
  196. package/lib/esm/api/params.js +191 -0
  197. package/lib/esm/api/routes.d.ts +1089 -0
  198. package/lib/esm/api/routes.d.ts.map +1 -0
  199. package/lib/esm/api/routes.js +1 -0
  200. package/lib/esm/api/schema.d.ts +4705 -0
  201. package/lib/esm/api/schema.d.ts.map +1 -0
  202. package/lib/esm/api/schema.js +1 -0
  203. package/lib/esm/api/types.d.ts +131 -0
  204. package/lib/esm/api/types.d.ts.map +1 -0
  205. package/lib/esm/api/types.js +1 -0
  206. package/lib/esm/classes/BannedUser.d.ts +18 -0
  207. package/lib/esm/classes/BannedUser.d.ts.map +1 -0
  208. package/lib/esm/classes/BannedUser.js +21 -0
  209. package/lib/esm/classes/Bot.d.ts +82 -0
  210. package/lib/esm/classes/Bot.d.ts.map +1 -0
  211. package/lib/esm/classes/Bot.js +116 -0
  212. package/lib/esm/classes/Channel.d.ts +465 -0
  213. package/lib/esm/classes/Channel.d.ts.map +1 -0
  214. package/lib/esm/classes/Channel.js +529 -0
  215. package/lib/esm/classes/ChannelUnread.d.ts +27 -0
  216. package/lib/esm/classes/ChannelUnread.d.ts.map +1 -0
  217. package/lib/esm/classes/ChannelUnread.js +34 -0
  218. package/lib/esm/classes/ChannelWebhook.d.ts +53 -0
  219. package/lib/esm/classes/ChannelWebhook.d.ts.map +1 -0
  220. package/lib/esm/classes/ChannelWebhook.js +83 -0
  221. package/lib/esm/classes/Emoji.d.ts +57 -0
  222. package/lib/esm/classes/Emoji.d.ts.map +1 -0
  223. package/lib/esm/classes/Emoji.js +77 -0
  224. package/lib/esm/classes/File.d.ts +67 -0
  225. package/lib/esm/classes/File.d.ts.map +1 -0
  226. package/lib/esm/classes/File.js +105 -0
  227. package/lib/esm/classes/Invite.d.ts +60 -0
  228. package/lib/esm/classes/Invite.d.ts.map +1 -0
  229. package/lib/esm/classes/Invite.js +80 -0
  230. package/lib/esm/classes/MFA.d.ts +83 -0
  231. package/lib/esm/classes/MFA.d.ts.map +1 -0
  232. package/lib/esm/classes/MFA.js +165 -0
  233. package/lib/esm/classes/Message.d.ts +484 -0
  234. package/lib/esm/classes/Message.d.ts.map +1 -0
  235. package/lib/esm/classes/Message.js +300 -0
  236. package/lib/esm/classes/MessageEmbed.d.ts +122 -0
  237. package/lib/esm/classes/MessageEmbed.d.ts.map +1 -0
  238. package/lib/esm/classes/MessageEmbed.js +192 -0
  239. package/lib/esm/classes/PublicBot.d.ts +28 -0
  240. package/lib/esm/classes/PublicBot.d.ts.map +1 -0
  241. package/lib/esm/classes/PublicBot.js +47 -0
  242. package/lib/esm/classes/PublicInvite.d.ts +57 -0
  243. package/lib/esm/classes/PublicInvite.d.ts.map +1 -0
  244. package/lib/esm/classes/PublicInvite.js +100 -0
  245. package/lib/esm/classes/Server.d.ts +473 -0
  246. package/lib/esm/classes/Server.d.ts.map +1 -0
  247. package/lib/esm/classes/Server.js +522 -0
  248. package/lib/esm/classes/ServerBan.d.ts +26 -0
  249. package/lib/esm/classes/ServerBan.d.ts.map +1 -0
  250. package/lib/esm/classes/ServerBan.js +33 -0
  251. package/lib/esm/classes/ServerMember.d.ts +138 -0
  252. package/lib/esm/classes/ServerMember.d.ts.map +1 -0
  253. package/lib/esm/classes/ServerMember.js +199 -0
  254. package/lib/esm/classes/Session.d.ts +45 -0
  255. package/lib/esm/classes/Session.d.ts.map +1 -0
  256. package/lib/esm/classes/Session.js +65 -0
  257. package/lib/esm/classes/SystemMessage.d.ts +127 -0
  258. package/lib/esm/classes/SystemMessage.d.ts.map +1 -0
  259. package/lib/esm/classes/SystemMessage.js +171 -0
  260. package/lib/esm/classes/User.d.ts +203 -0
  261. package/lib/esm/classes/User.d.ts.map +1 -0
  262. package/lib/esm/classes/User.js +252 -0
  263. package/lib/esm/classes/UserProfile.d.ts +23 -0
  264. package/lib/esm/classes/UserProfile.d.ts.map +1 -0
  265. package/lib/esm/classes/UserProfile.js +31 -0
  266. package/lib/esm/classes/index.d.ts +21 -0
  267. package/lib/esm/classes/index.d.ts.map +1 -0
  268. package/lib/esm/classes/index.js +20 -0
  269. package/lib/esm/collections/AccountCollection.d.ts +91 -0
  270. package/lib/esm/collections/AccountCollection.d.ts.map +1 -0
  271. package/lib/esm/collections/AccountCollection.js +139 -0
  272. package/lib/esm/collections/BotCollection.d.ts +39 -0
  273. package/lib/esm/collections/BotCollection.d.ts.map +1 -0
  274. package/lib/esm/collections/BotCollection.js +68 -0
  275. package/lib/esm/collections/ChannelCollection.d.ts +39 -0
  276. package/lib/esm/collections/ChannelCollection.d.ts.map +1 -0
  277. package/lib/esm/collections/ChannelCollection.js +75 -0
  278. package/lib/esm/collections/ChannelUnreadCollection.d.ts +24 -0
  279. package/lib/esm/collections/ChannelUnreadCollection.d.ts.map +1 -0
  280. package/lib/esm/collections/ChannelUnreadCollection.js +41 -0
  281. package/lib/esm/collections/ChannelWebhookCollection.d.ts +29 -0
  282. package/lib/esm/collections/ChannelWebhookCollection.d.ts.map +1 -0
  283. package/lib/esm/collections/ChannelWebhookCollection.js +52 -0
  284. package/lib/esm/collections/Collection.d.ts +153 -0
  285. package/lib/esm/collections/Collection.d.ts.map +1 -0
  286. package/lib/esm/collections/Collection.js +160 -0
  287. package/lib/esm/collections/EmojiCollection.d.ts +27 -0
  288. package/lib/esm/collections/EmojiCollection.d.ts.map +1 -0
  289. package/lib/esm/collections/EmojiCollection.js +52 -0
  290. package/lib/esm/collections/MessageCollection.d.ts +28 -0
  291. package/lib/esm/collections/MessageCollection.d.ts.map +1 -0
  292. package/lib/esm/collections/MessageCollection.js +54 -0
  293. package/lib/esm/collections/ServerCollection.d.ts +36 -0
  294. package/lib/esm/collections/ServerCollection.d.ts.map +1 -0
  295. package/lib/esm/collections/ServerCollection.js +79 -0
  296. package/lib/esm/collections/ServerMemberCollection.d.ts +45 -0
  297. package/lib/esm/collections/ServerMemberCollection.d.ts.map +1 -0
  298. package/lib/esm/collections/ServerMemberCollection.js +80 -0
  299. package/lib/esm/collections/SessionCollection.d.ts +27 -0
  300. package/lib/esm/collections/SessionCollection.d.ts.map +1 -0
  301. package/lib/esm/collections/SessionCollection.js +46 -0
  302. package/lib/esm/collections/UserCollection.d.ts +31 -0
  303. package/lib/esm/collections/UserCollection.d.ts.map +1 -0
  304. package/lib/esm/collections/UserCollection.js +66 -0
  305. package/lib/esm/collections/index.d.ts +12 -0
  306. package/lib/esm/collections/index.d.ts.map +1 -0
  307. package/lib/esm/collections/index.js +11 -0
  308. package/lib/esm/events/EventClient.d.ts +89 -0
  309. package/lib/esm/events/EventClient.d.ts.map +1 -0
  310. package/lib/esm/events/EventClient.js +175 -0
  311. package/lib/esm/events/index.d.ts +18 -0
  312. package/lib/esm/events/index.d.ts.map +1 -0
  313. package/lib/esm/events/index.js +2 -0
  314. package/lib/esm/events/v1.d.ts +214 -0
  315. package/lib/esm/events/v1.d.ts.map +1 -0
  316. package/lib/esm/events/v1.js +514 -0
  317. package/lib/esm/hydration/bot.d.ts +21 -0
  318. package/lib/esm/hydration/bot.d.ts.map +1 -0
  319. package/lib/esm/hydration/bot.js +28 -0
  320. package/lib/esm/hydration/channel.d.ts +25 -0
  321. package/lib/esm/hydration/channel.d.ts.map +1 -0
  322. package/lib/esm/hydration/channel.js +37 -0
  323. package/lib/esm/hydration/channelUnread.d.ts +11 -0
  324. package/lib/esm/hydration/channelUnread.d.ts.map +1 -0
  325. package/lib/esm/hydration/channelUnread.js +16 -0
  326. package/lib/esm/hydration/channelWebhook.d.ts +12 -0
  327. package/lib/esm/hydration/channelWebhook.d.ts.map +1 -0
  328. package/lib/esm/hydration/channelWebhook.js +18 -0
  329. package/lib/esm/hydration/emoji.d.ts +13 -0
  330. package/lib/esm/hydration/emoji.d.ts.map +1 -0
  331. package/lib/esm/hydration/emoji.js +15 -0
  332. package/lib/esm/hydration/index.d.ts +1404 -0
  333. package/lib/esm/hydration/index.d.ts.map +1 -0
  334. package/lib/esm/hydration/index.js +65 -0
  335. package/lib/esm/hydration/message.d.ts +25 -0
  336. package/lib/esm/hydration/message.d.ts.map +1 -0
  337. package/lib/esm/hydration/message.js +45 -0
  338. package/lib/esm/hydration/server.d.ts +31 -0
  339. package/lib/esm/hydration/server.d.ts.map +1 -0
  340. package/lib/esm/hydration/server.js +41 -0
  341. package/lib/esm/hydration/serverMember.d.ts +14 -0
  342. package/lib/esm/hydration/serverMember.d.ts.map +1 -0
  343. package/lib/esm/hydration/serverMember.js +18 -0
  344. package/lib/esm/hydration/session.d.ts +8 -0
  345. package/lib/esm/hydration/session.d.ts.map +1 -0
  346. package/lib/esm/hydration/session.js +10 -0
  347. package/lib/esm/hydration/user.d.ts +43 -0
  348. package/lib/esm/hydration/user.d.ts.map +1 -0
  349. package/lib/esm/hydration/user.js +50 -0
  350. package/lib/esm/index.d.ts +9 -0
  351. package/lib/esm/index.d.ts.map +1 -0
  352. package/lib/esm/index.js +8 -0
  353. package/lib/esm/lib/merge.d.ts +15 -0
  354. package/lib/esm/lib/merge.d.ts.map +1 -0
  355. package/lib/esm/lib/merge.js +1 -0
  356. package/lib/esm/lib/regex.d.ts +13 -0
  357. package/lib/esm/lib/regex.d.ts.map +1 -0
  358. package/lib/esm/lib/regex.js +12 -0
  359. package/lib/esm/package.json +3 -0
  360. package/lib/esm/permissions/calculator.d.ts +19 -0
  361. package/lib/esm/permissions/calculator.d.ts.map +1 -0
  362. package/lib/esm/permissions/calculator.js +129 -0
  363. package/lib/esm/permissions/definitions.d.ts +73 -0
  364. package/lib/esm/permissions/definitions.d.ts.map +1 -0
  365. package/lib/esm/permissions/definitions.js +121 -0
  366. package/lib/esm/storage/ObjectStorage.d.ts +28 -0
  367. package/lib/esm/storage/ObjectStorage.d.ts.map +1 -0
  368. package/lib/esm/storage/ObjectStorage.js +39 -0
  369. package/package.json +59 -0
@@ -0,0 +1,4705 @@
1
+ export interface paths {
2
+ "/": {
3
+ /** Fetch the server configuration for this Hischool instance. */
4
+ get: operations["root_root"];
5
+ };
6
+ "/users/@me": {
7
+ /** Retrieve your user information. */
8
+ get: operations["fetch_self_fetch"];
9
+ };
10
+ "/users/{target}": {
11
+ /** Retrieve a user's information. */
12
+ get: operations["fetch_user_fetch"];
13
+ /** Edit currently authenticated user. */
14
+ patch: operations["edit_user_edit"];
15
+ };
16
+ "/users/{target}/flags": {
17
+ /** Retrieve a user's flags. */
18
+ get: operations["fetch_user_flags_fetch_user_flags"];
19
+ };
20
+ "/users/@me/username": {
21
+ /** Change your username. */
22
+ patch: operations["change_username_change_username"];
23
+ };
24
+ "/users/{target}/default_avatar": {
25
+ /** This returns a default avatar based on the given id. */
26
+ get: operations["get_default_avatar_default_avatar"];
27
+ };
28
+ "/users/{target}/profile": {
29
+ /**
30
+ * Retrieve a user's profile data.
31
+ *
32
+ * Will fail if you do not have permission to access the other user's profile.
33
+ */
34
+ get: operations["fetch_profile_profile"];
35
+ };
36
+ "/users/dms": {
37
+ /** This fetches your direct messages, including any DM and group DM conversations. */
38
+ get: operations["fetch_dms_direct_messages"];
39
+ };
40
+ "/users/{target}/dm": {
41
+ /**
42
+ * Open a DM with another user.
43
+ *
44
+ * If the target is oneself, a saved messages channel is returned.
45
+ */
46
+ get: operations["open_dm_open_dm"];
47
+ };
48
+ "/users/{target}/mutual": {
49
+ /** Retrieve a list of mutual friends and servers with another user. */
50
+ get: operations["find_mutual_mutual"];
51
+ };
52
+ "/users/{target}/friend": {
53
+ /** Accept another user's friend request. */
54
+ put: operations["add_friend_add"];
55
+ /** Denies another user's friend request or removes an existing friend. */
56
+ delete: operations["remove_friend_remove"];
57
+ };
58
+ "/users/{target}/block": {
59
+ /** Block another user by their id. */
60
+ put: operations["block_user_block"];
61
+ /** Unblock another user by their id. */
62
+ delete: operations["unblock_user_unblock"];
63
+ };
64
+ "/users/friend": {
65
+ /** Send a friend request to another user. */
66
+ post: operations["send_friend_request_send_friend_request"];
67
+ };
68
+ "/bots/create": {
69
+ /** Create a new Hischool bot. */
70
+ post: operations["create_create_bot"];
71
+ };
72
+ "/bots/{target}/invite": {
73
+ /** Fetch details of a public (or owned) bot by its id. */
74
+ get: operations["fetch_public_fetch_public_bot"];
75
+ /** Invite a bot to a server or group by its id.` */
76
+ post: operations["invite_invite_bot"];
77
+ };
78
+ "/bots/{bot}": {
79
+ /** Fetch details of a bot you own by its id. */
80
+ get: operations["fetch_fetch_bot"];
81
+ };
82
+ "/bots/@me": {
83
+ /** Fetch all of the bots that you have control over. */
84
+ get: operations["fetch_owned_fetch_owned_bots"];
85
+ };
86
+ "/bots/{target}": {
87
+ /** Delete a bot by its id. */
88
+ delete: operations["delete_delete_bot"];
89
+ /** Edit bot details by its id. */
90
+ patch: operations["edit_edit_bot"];
91
+ };
92
+ "/channels/{target}/ack/{message}": {
93
+ /** Lets the server and all other clients know that we've seen this message id in this channel. */
94
+ put: operations["channel_ack_ack"];
95
+ };
96
+ "/channels/{target}": {
97
+ /** Fetch channel by its id. */
98
+ get: operations["channel_fetch_fetch"];
99
+ /** Deletes a server channel, leaves a group or closes a group. */
100
+ delete: operations["channel_delete_delete"];
101
+ /** Edit a channel object by its id. */
102
+ patch: operations["channel_edit_edit"];
103
+ };
104
+ "/channels/{target}/members": {
105
+ /**
106
+ * Retrieves all users who are part of this group.
107
+ *
108
+ * This may not return full user information if users are not friends but have mutual connections.
109
+ */
110
+ get: operations["members_fetch_fetch_members"];
111
+ };
112
+ "/channels/{target}/invites": {
113
+ /**
114
+ * Creates an invite to this channel.
115
+ *
116
+ * Channel must be a `TextChannel`.
117
+ */
118
+ post: operations["invite_create_create_invite"];
119
+ };
120
+ "/channels/{target}/messages": {
121
+ /** Fetch multiple messages. */
122
+ get: operations["message_query_query"];
123
+ /** Sends a message to the given channel. */
124
+ post: operations["message_send_message_send"];
125
+ };
126
+ "/channels/{target}/search": {
127
+ /** This route searches for messages within the given parameters. */
128
+ post: operations["message_search_search"];
129
+ };
130
+ "/channels/{target}/messages/{msg}/pin": {
131
+ /** Pins a message by its id. */
132
+ post: operations["message_pin_message_pin"];
133
+ /** Unpins a message by its id. */
134
+ delete: operations["message_unpin_message_unpin"];
135
+ };
136
+ "/channels/{target}/messages/{msg}": {
137
+ /** Retrieves a message by its id. */
138
+ get: operations["message_fetch_fetch"];
139
+ /** Delete a message you've sent or one you have permission to delete. */
140
+ delete: operations["message_delete_delete"];
141
+ /** Edits a message that you've previously sent. */
142
+ patch: operations["message_edit_edit"];
143
+ };
144
+ "/channels/{target}/messages/bulk": {
145
+ /**
146
+ * Delete multiple messages you've sent or one you have permission to delete.
147
+ *
148
+ * This will always require `ManageMessages` permission regardless of whether you own the message or not.
149
+ *
150
+ * Messages must have been sent within the past 1 week.
151
+ */
152
+ delete: operations["message_bulk_delete_bulk_delete_messages"];
153
+ };
154
+ "/channels/create": {
155
+ /** Create a new group channel. */
156
+ post: operations["group_create_create_group"];
157
+ };
158
+ "/channels/{group_id}/recipients/{member_id}": {
159
+ /** Adds another user to the group. */
160
+ put: operations["group_add_member_add_member"];
161
+ };
162
+ "/channels/{target}/recipients/{member}": {
163
+ /** Removes a user from the group. */
164
+ delete: operations["group_remove_member_remove_member"];
165
+ };
166
+ "/channels/{target}/join_call": {
167
+ /** Asks the voice server for a token to join the call. */
168
+ post: operations["voice_join_call"];
169
+ };
170
+ "/channels/{target}/permissions/{role_id}": {
171
+ /**
172
+ * Sets permissions for the specified role in this channel.
173
+ *
174
+ * Channel must be a `TextChannel` or `VoiceChannel`.
175
+ */
176
+ put: operations["permissions_set_set_role_permissions"];
177
+ };
178
+ "/channels/{target}/permissions/default": {
179
+ /**
180
+ * Sets permissions for the default role in this channel.
181
+ *
182
+ * Channel must be a `Group`, `TextChannel` or `VoiceChannel`.
183
+ */
184
+ put: operations["permissions_set_default_set_default_permissions"];
185
+ };
186
+ "/channels/{target}/messages/{msg}/reactions/{emoji}": {
187
+ /** React to a given message. */
188
+ put: operations["message_react_react_message"];
189
+ /**
190
+ * Remove your own, someone else's or all of a given reaction.
191
+ *
192
+ * Requires `ManageMessages` if changing others' reactions.
193
+ */
194
+ delete: operations["message_unreact_unreact_message"];
195
+ };
196
+ "/channels/{target}/messages/{msg}/reactions": {
197
+ /**
198
+ * Remove your own, someone else's or all of a given reaction.
199
+ *
200
+ * Requires `ManageMessages` permission.
201
+ */
202
+ delete: operations["message_clear_reactions_clear_reactions"];
203
+ };
204
+ "/channels/{target}/webhooks": {
205
+ /** Creates a webhook which 3rd party platforms can use to send messages */
206
+ post: operations["webhook_create_create_webhook"];
207
+ };
208
+ "/channels/{channel_id}/webhooks": {
209
+ /** Gets all webhooks inside the channel */
210
+ get: operations["webhook_fetch_all_fetch_webhooks"];
211
+ };
212
+ "/servers/create": {
213
+ /** Create a new server. */
214
+ post: operations["server_create_create_server"];
215
+ };
216
+ "/servers/{target}": {
217
+ /** Fetch a server by its id. */
218
+ get: operations["server_fetch_fetch"];
219
+ /** Deletes a server if owner otherwise leaves. */
220
+ delete: operations["server_delete_delete"];
221
+ /** Edit a server by its id. */
222
+ patch: operations["server_edit_edit"];
223
+ };
224
+ "/servers/{target}/ack": {
225
+ /** Mark all channels in a server as read. */
226
+ put: operations["server_ack_ack"];
227
+ };
228
+ "/servers/{server}/channels": {
229
+ /** Create a new Text or Voice channel. */
230
+ post: operations["channel_create_create_server_channel"];
231
+ };
232
+ "/servers/{target}/members": {
233
+ /** Fetch all server members. */
234
+ get: operations["member_fetch_all_fetch_all"];
235
+ };
236
+ "/servers/{target}/members/{member}": {
237
+ /** Retrieve a member. */
238
+ get: operations["member_fetch_fetch"];
239
+ /** Removes a member from the server. */
240
+ delete: operations["member_remove_kick"];
241
+ };
242
+ "/servers/{server}/members/{target}": {
243
+ /** Edit a member by their id. */
244
+ patch: operations["member_edit_edit"];
245
+ };
246
+ "/servers/{target}/members_experimental_query": {
247
+ /** Query members by a given name, this API is not stable and will be removed in the future. */
248
+ get: operations["member_experimental_query_member_experimental_query"];
249
+ };
250
+ "/servers/{server}/bans/{target}": {
251
+ /** Ban a user by their id. */
252
+ put: operations["ban_create_ban"];
253
+ /** Remove a user's ban. */
254
+ delete: operations["ban_remove_unban"];
255
+ };
256
+ "/servers/{target}/bans": {
257
+ /** Fetch all bans on a server. */
258
+ get: operations["ban_list_list"];
259
+ };
260
+ "/servers/{target}/invites": {
261
+ /** Fetch all server invites. */
262
+ get: operations["invites_fetch_invites"];
263
+ };
264
+ "/servers/{target}/roles": {
265
+ /** Creates a new server role. */
266
+ post: operations["roles_create_create"];
267
+ };
268
+ "/servers/{target}/roles/{role_id}": {
269
+ /** Fetch a role by its id. */
270
+ get: operations["roles_fetch_fetch"];
271
+ /** Delete a server role by its id. */
272
+ delete: operations["roles_delete_delete"];
273
+ /** Edit a role by its id. */
274
+ patch: operations["roles_edit_edit"];
275
+ };
276
+ "/servers/{target}/permissions/{role_id}": {
277
+ /** Sets permissions for the specified role in the server. */
278
+ put: operations["permissions_set_set_role_permission"];
279
+ };
280
+ "/servers/{target}/permissions/default": {
281
+ /** Sets permissions for the default role in this server. */
282
+ put: operations["permissions_set_default_set_default_permissions"];
283
+ };
284
+ "/servers/{target}/emojis": {
285
+ /** Fetch all emoji on a server. */
286
+ get: operations["emoji_list_list_emoji"];
287
+ };
288
+ "/invites/{target}": {
289
+ /** Fetch an invite by its id. */
290
+ get: operations["invite_fetch_fetch"];
291
+ /** Join an invite by its ID */
292
+ post: operations["invite_join_join"];
293
+ /** Delete an invite by its id. */
294
+ delete: operations["invite_delete_delete"];
295
+ };
296
+ "/custom/emoji/{id}": {
297
+ /** Create an emoji by its Autumn upload id. */
298
+ put: operations["emoji_create_create_emoji"];
299
+ };
300
+ "/custom/emoji/{emoji_id}": {
301
+ /** Fetch an emoji by its id. */
302
+ get: operations["emoji_fetch_fetch_emoji"];
303
+ /** Delete an emoji by its id. */
304
+ delete: operations["emoji_delete_delete_emoji"];
305
+ };
306
+ "/safety/report": {
307
+ /** Report a piece of content to the moderation team. */
308
+ post: operations["report_content_report_content"];
309
+ };
310
+ "/auth/account/create": {
311
+ /** Create a new account. */
312
+ post: operations["create_account_create_account"];
313
+ };
314
+ "/auth/account/reverify": {
315
+ /** Resend account creation verification email. */
316
+ post: operations["resend_verification_resend_verification"];
317
+ };
318
+ "/auth/account/delete": {
319
+ /** Schedule an account for deletion by confirming the received token. */
320
+ put: operations["confirm_deletion_confirm_deletion"];
321
+ /** Request to have an account deleted. */
322
+ post: operations["delete_account_delete_account"];
323
+ };
324
+ "/auth/account/": {
325
+ /** Fetch account information from the current session. */
326
+ get: operations["fetch_account_fetch_account"];
327
+ };
328
+ "/auth/account/disable": {
329
+ /** Disable an account. */
330
+ post: operations["disable_account_disable_account"];
331
+ };
332
+ "/auth/account/change/password": {
333
+ /** Change the current account password. */
334
+ patch: operations["change_password_change_password"];
335
+ };
336
+ "/auth/account/change/email": {
337
+ /** Change the associated account email. */
338
+ patch: operations["change_email_change_email"];
339
+ };
340
+ "/auth/account/verify/{code}": {
341
+ /** Verify an email address. */
342
+ post: operations["verify_email_verify_email"];
343
+ };
344
+ "/auth/account/reset_password": {
345
+ /** Send an email to reset account password. */
346
+ post: operations["send_password_reset_send_password_reset"];
347
+ /** Confirm password reset and change the password. */
348
+ patch: operations["password_reset_password_reset"];
349
+ };
350
+ "/auth/session/login": {
351
+ /** Login to an account. */
352
+ post: operations["login_login"];
353
+ };
354
+ "/auth/session/logout": {
355
+ /** Delete current session. */
356
+ post: operations["logout_logout"];
357
+ };
358
+ "/auth/session/all": {
359
+ /** Fetch all sessions associated with this account. */
360
+ get: operations["fetch_all_fetch_all"];
361
+ /** Delete all active sessions, optionally including current one. */
362
+ delete: operations["revoke_all_revoke_all"];
363
+ };
364
+ "/auth/session/{id}": {
365
+ /** Delete a specific active session. */
366
+ delete: operations["revoke_revoke"];
367
+ /** Edit current session information. */
368
+ patch: operations["edit_edit"];
369
+ };
370
+ "/auth/mfa/ticket": {
371
+ /** Create a new MFA ticket or validate an existing one. */
372
+ put: operations["create_ticket_create_ticket"];
373
+ };
374
+ "/auth/mfa/": {
375
+ /** Fetch MFA status of an account. */
376
+ get: operations["fetch_status_fetch_status"];
377
+ };
378
+ "/auth/mfa/recovery": {
379
+ /** Fetch recovery codes for an account. */
380
+ post: operations["fetch_recovery_fetch_recovery"];
381
+ /** Re-generate recovery codes for an account. */
382
+ patch: operations["generate_recovery_generate_recovery"];
383
+ };
384
+ "/auth/mfa/methods": {
385
+ /** Fetch available MFA methods. */
386
+ get: operations["get_mfa_methods_get_mfa_methods"];
387
+ };
388
+ "/auth/mfa/totp": {
389
+ /** Generate a new secret for TOTP. */
390
+ put: operations["totp_enable_totp_enable"];
391
+ /** Generate a new secret for TOTP. */
392
+ post: operations["totp_generate_secret_totp_generate_secret"];
393
+ /** Disable TOTP 2FA for an account. */
394
+ delete: operations["totp_disable_totp_disable"];
395
+ };
396
+ "/onboard/hello": {
397
+ /** This will tell you whether the current account requires onboarding or whether you can continue to send requests as usual. You may skip calling this if you're restoring an existing session. */
398
+ get: operations["hello_hello"];
399
+ };
400
+ "/onboard/complete": {
401
+ /** This sets a new username, completes onboarding and allows a user to start using Hischool. */
402
+ post: operations["complete_complete"];
403
+ };
404
+ "/push/subscribe": {
405
+ /**
406
+ * Create a new Web Push subscription.
407
+ *
408
+ * If an existing subscription exists on this session, it will be removed.
409
+ */
410
+ post: operations["subscribe_subscribe"];
411
+ };
412
+ "/push/unsubscribe": {
413
+ /** Remove the Web Push subscription associated with the current session. */
414
+ post: operations["unsubscribe_unsubscribe"];
415
+ };
416
+ "/sync/settings/fetch": {
417
+ /**
418
+ * Fetch settings from server filtered by keys.
419
+ *
420
+ * This will return an object with the requested keys, each value is a tuple of `(timestamp, value)`, the value is the previously uploaded data.
421
+ */
422
+ post: operations["get_settings_fetch"];
423
+ };
424
+ "/sync/settings/set": {
425
+ /** Upload data to save to settings. */
426
+ post: operations["set_settings_set"];
427
+ };
428
+ "/sync/unreads": {
429
+ /** Fetch information about unread state on channels. */
430
+ get: operations["get_unreads_unreads"];
431
+ };
432
+ }
433
+ export interface components {
434
+ schemas: {
435
+ /** Server Configuration */
436
+ HischoolConfig: {
437
+ /** @description Hischool API Version */
438
+ hischool: string;
439
+ /** @description Features enabled on this Hischool node */
440
+ features: components["schemas"]["HischoolFeatures"];
441
+ /** @description WebSocket URL */
442
+ ws: string;
443
+ /** @description URL pointing to the client serving this node */
444
+ app: string;
445
+ /** @description Web Push VAPID public key */
446
+ vapid: string;
447
+ /** @description Build information */
448
+ build: components["schemas"]["BuildInformation"];
449
+ };
450
+ /** Feature Configuration */
451
+ HischoolFeatures: {
452
+ /** @description hCaptcha configuration */
453
+ captcha: components["schemas"]["CaptchaFeature"];
454
+ /** @description Whether email verification is enabled */
455
+ email: boolean;
456
+ /** @description Whether this server is invite only */
457
+ invite_only: boolean;
458
+ /** @description File server service configuration */
459
+ autumn: components["schemas"]["Feature"];
460
+ /** @description Proxy service configuration */
461
+ january: components["schemas"]["Feature"];
462
+ /** @description Voice server configuration */
463
+ voso: components["schemas"]["VoiceFeature"];
464
+ };
465
+ /** hCaptcha Configuration */
466
+ CaptchaFeature: {
467
+ /** @description Whether captcha is enabled */
468
+ enabled: boolean;
469
+ /** @description Client key used for solving captcha */
470
+ key: string;
471
+ };
472
+ /** Generic Service Configuration */
473
+ Feature: {
474
+ /** @description Whether the service is enabled */
475
+ enabled: boolean;
476
+ /** @description URL pointing to the service */
477
+ url: string;
478
+ };
479
+ /** Voice Server Configuration */
480
+ VoiceFeature: {
481
+ /** @description Whether voice is enabled */
482
+ enabled: boolean;
483
+ /** @description URL pointing to the voice API */
484
+ url: string;
485
+ /** @description URL pointing to the voice WebSocket server */
486
+ ws: string;
487
+ };
488
+ /** Build Information */
489
+ BuildInformation: {
490
+ /** @description Commit Hash */
491
+ commit_sha: string;
492
+ /** @description Commit Timestamp */
493
+ commit_timestamp: string;
494
+ /** @description Git Semver */
495
+ semver: string;
496
+ /** @description Git Origin URL */
497
+ origin_url: string;
498
+ /** @description Build Timestamp */
499
+ timestamp: string;
500
+ };
501
+ /**
502
+ * Error
503
+ * @description Error information
504
+ */
505
+ Error: ({
506
+ /** @enum {string} */
507
+ type: "LabelMe";
508
+ } | {
509
+ /** @enum {string} */
510
+ type: "AlreadyOnboarded";
511
+ } | {
512
+ /** @enum {string} */
513
+ type: "UsernameTaken";
514
+ } | {
515
+ /** @enum {string} */
516
+ type: "InvalidUsername";
517
+ } | {
518
+ /** @enum {string} */
519
+ type: "DiscriminatorChangeRatelimited";
520
+ } | {
521
+ /** @enum {string} */
522
+ type: "UnknownUser";
523
+ } | {
524
+ /** @enum {string} */
525
+ type: "AlreadyFriends";
526
+ } | {
527
+ /** @enum {string} */
528
+ type: "AlreadySentRequest";
529
+ } | {
530
+ /** @enum {string} */
531
+ type: "Blocked";
532
+ } | {
533
+ /** @enum {string} */
534
+ type: "BlockedByOther";
535
+ } | {
536
+ /** @enum {string} */
537
+ type: "NotFriends";
538
+ } | {
539
+ /** @enum {string} */
540
+ type: "TooManyPendingFriendRequests";
541
+ /** Format: uint */
542
+ max: number;
543
+ } | {
544
+ /** @enum {string} */
545
+ type: "UnknownChannel";
546
+ } | {
547
+ /** @enum {string} */
548
+ type: "UnknownAttachment";
549
+ } | {
550
+ /** @enum {string} */
551
+ type: "UnknownMessage";
552
+ } | {
553
+ /** @enum {string} */
554
+ type: "CannotEditMessage";
555
+ } | {
556
+ /** @enum {string} */
557
+ type: "CannotJoinCall";
558
+ } | {
559
+ /** @enum {string} */
560
+ type: "TooManyAttachments";
561
+ /** Format: uint */
562
+ max: number;
563
+ } | {
564
+ /** @enum {string} */
565
+ type: "TooManyEmbeds";
566
+ /** Format: uint */
567
+ max: number;
568
+ } | {
569
+ /** @enum {string} */
570
+ type: "TooManyReplies";
571
+ /** Format: uint */
572
+ max: number;
573
+ } | {
574
+ /** @enum {string} */
575
+ type: "TooManyChannels";
576
+ /** Format: uint */
577
+ max: number;
578
+ } | {
579
+ /** @enum {string} */
580
+ type: "EmptyMessage";
581
+ } | {
582
+ /** @enum {string} */
583
+ type: "PayloadTooLarge";
584
+ } | {
585
+ /** @enum {string} */
586
+ type: "CannotRemoveYourself";
587
+ } | {
588
+ /** @enum {string} */
589
+ type: "GroupTooLarge";
590
+ /** Format: uint */
591
+ max: number;
592
+ } | {
593
+ /** @enum {string} */
594
+ type: "AlreadyInGroup";
595
+ } | {
596
+ /** @enum {string} */
597
+ type: "NotInGroup";
598
+ } | {
599
+ /** @enum {string} */
600
+ type: "AlreadyPinned";
601
+ } | {
602
+ /** @enum {string} */
603
+ type: "NotPinned";
604
+ } | {
605
+ /** @enum {string} */
606
+ type: "UnknownServer";
607
+ } | {
608
+ /** @enum {string} */
609
+ type: "InvalidRole";
610
+ } | {
611
+ /** @enum {string} */
612
+ type: "Banned";
613
+ } | {
614
+ /** @enum {string} */
615
+ type: "TooManyServers";
616
+ /** Format: uint */
617
+ max: number;
618
+ } | {
619
+ /** @enum {string} */
620
+ type: "TooManyEmoji";
621
+ /** Format: uint */
622
+ max: number;
623
+ } | {
624
+ /** @enum {string} */
625
+ type: "TooManyRoles";
626
+ /** Format: uint */
627
+ max: number;
628
+ } | {
629
+ /** @enum {string} */
630
+ type: "AlreadyInServer";
631
+ } | {
632
+ /** @enum {string} */
633
+ type: "ReachedMaximumBots";
634
+ } | {
635
+ /** @enum {string} */
636
+ type: "IsBot";
637
+ } | {
638
+ /** @enum {string} */
639
+ type: "BotIsPrivate";
640
+ } | {
641
+ /** @enum {string} */
642
+ type: "CannotReportYourself";
643
+ } | {
644
+ /** @enum {string} */
645
+ type: "MissingPermission";
646
+ permission: string;
647
+ } | {
648
+ /** @enum {string} */
649
+ type: "MissingUserPermission";
650
+ permission: string;
651
+ } | {
652
+ /** @enum {string} */
653
+ type: "NotElevated";
654
+ } | {
655
+ /** @enum {string} */
656
+ type: "NotPrivileged";
657
+ } | {
658
+ /** @enum {string} */
659
+ type: "CannotGiveMissingPermissions";
660
+ } | {
661
+ /** @enum {string} */
662
+ type: "NotOwner";
663
+ } | {
664
+ /** @enum {string} */
665
+ type: "DatabaseError";
666
+ operation: string;
667
+ collection: string;
668
+ } | {
669
+ /** @enum {string} */
670
+ type: "InternalError";
671
+ } | {
672
+ /** @enum {string} */
673
+ type: "InvalidOperation";
674
+ } | {
675
+ /** @enum {string} */
676
+ type: "InvalidCredentials";
677
+ } | {
678
+ /** @enum {string} */
679
+ type: "InvalidProperty";
680
+ } | {
681
+ /** @enum {string} */
682
+ type: "InvalidSession";
683
+ } | {
684
+ /** @enum {string} */
685
+ type: "DuplicateNonce";
686
+ } | {
687
+ /** @enum {string} */
688
+ type: "NotFound";
689
+ } | {
690
+ /** @enum {string} */
691
+ type: "NoEffect";
692
+ } | {
693
+ /** @enum {string} */
694
+ type: "FailedValidation";
695
+ error: string;
696
+ } | {
697
+ /** @enum {string} */
698
+ type: "VosoUnavailable";
699
+ }) & {
700
+ /** @description Where this error occurred */
701
+ location: string;
702
+ };
703
+ /** @description User */
704
+ User: {
705
+ /** @description Unique Id */
706
+ _id: string;
707
+ /** @description Username */
708
+ username: string;
709
+ /** @description Discriminator */
710
+ discriminator: string;
711
+ /** @description Display name */
712
+ display_name?: string | null;
713
+ /** @description Avatar attachment */
714
+ avatar?: components["schemas"]["File"] | null;
715
+ /** @description Relationships with other users */
716
+ relations?: components["schemas"]["Relationship"][];
717
+ /**
718
+ * Format: uint32
719
+ * @description Bitfield of user badges
720
+ *
721
+ * https://docs.rs/hischool-models/latest/hischool_models/v0/enum.UserBadges.html
722
+ */
723
+ badges?: number;
724
+ /** @description User's current status */
725
+ status?: components["schemas"]["UserStatus"] | null;
726
+ /**
727
+ * Format: uint32
728
+ * @description Enum of user flags
729
+ *
730
+ * https://docs.rs/hischool-models/latest/hischool_models/v0/enum.UserFlags.html
731
+ */
732
+ flags?: number;
733
+ /** @description Whether this user is privileged */
734
+ privileged?: boolean;
735
+ /** @description Bot information */
736
+ bot?: components["schemas"]["BotInformation"] | null;
737
+ /** @description Current session user's relationship with this user */
738
+ relationship: components["schemas"]["RelationshipStatus"];
739
+ /** @description Whether this user is currently online */
740
+ online: boolean;
741
+ };
742
+ /** @description File */
743
+ File: {
744
+ /** @description Unique Id */
745
+ _id: string;
746
+ /** @description Tag / bucket this file was uploaded to */
747
+ tag: string;
748
+ /** @description Original filename */
749
+ filename: string;
750
+ /** @description Parsed metadata of this file */
751
+ metadata: components["schemas"]["Metadata"];
752
+ /** @description Raw content type of this file */
753
+ content_type: string;
754
+ /**
755
+ * Format: int
756
+ * @description Size of this file (in bytes)
757
+ */
758
+ size: number;
759
+ /** @description Whether this file was deleted */
760
+ deleted?: boolean | null;
761
+ /** @description Whether this file was reported */
762
+ reported?: boolean | null;
763
+ message_id?: string | null;
764
+ user_id?: string | null;
765
+ server_id?: string | null;
766
+ /** @description Id of the object this file is associated with */
767
+ object_id?: string | null;
768
+ };
769
+ /** @description Metadata associated with a file */
770
+ Metadata: {
771
+ /** @enum {string} */
772
+ type: "File";
773
+ } | {
774
+ /** @enum {string} */
775
+ type: "Text";
776
+ } | {
777
+ /** @enum {string} */
778
+ type: "Image";
779
+ /** Format: uint */
780
+ width: number;
781
+ /** Format: uint */
782
+ height: number;
783
+ } | {
784
+ /** @enum {string} */
785
+ type: "Video";
786
+ /** Format: uint */
787
+ width: number;
788
+ /** Format: uint */
789
+ height: number;
790
+ } | {
791
+ /** @enum {string} */
792
+ type: "Audio";
793
+ };
794
+ /** @description Relationship entry indicating current status with other user */
795
+ Relationship: {
796
+ /** @description Other user's Id */
797
+ _id: string;
798
+ /** @description Relationship status with them */
799
+ status: components["schemas"]["RelationshipStatus"];
800
+ };
801
+ /**
802
+ * @description User's relationship with another user (or themselves)
803
+ * @enum {string}
804
+ */
805
+ RelationshipStatus: "None" | "User" | "Friend" | "Outgoing" | "Incoming" | "Blocked" | "BlockedOther";
806
+ /** @description User's active status */
807
+ UserStatus: {
808
+ /** @description Custom status text */
809
+ text?: string | null;
810
+ /** @description Current presence option */
811
+ presence?: components["schemas"]["Presence"] | null;
812
+ };
813
+ /**
814
+ * @description Presence status
815
+ * @enum {string}
816
+ */
817
+ Presence: "Online" | "Idle" | "Focus" | "Busy" | "Invisible";
818
+ /** @description Bot information for if the user is a bot */
819
+ BotInformation: {
820
+ /** @description Id of the owner of this bot */
821
+ owner: string;
822
+ };
823
+ Id: string;
824
+ /** @description User flag reponse */
825
+ FlagResponse: {
826
+ /**
827
+ * Format: int32
828
+ * @description Flags
829
+ */
830
+ flags: number;
831
+ };
832
+ /** @description New user information */
833
+ DataEditUser: {
834
+ /** @description New display name */
835
+ display_name?: string | null;
836
+ /** @description Attachment Id for avatar */
837
+ avatar?: string | null;
838
+ /** @description New user status */
839
+ status?: components["schemas"]["UserStatus"] | null;
840
+ /**
841
+ * @description New user profile data
842
+ *
843
+ * This is applied as a partial.
844
+ */
845
+ profile?: components["schemas"]["DataUserProfile"] | null;
846
+ /**
847
+ * Format: int32
848
+ * @description Bitfield of user badges
849
+ */
850
+ badges?: number | null;
851
+ /**
852
+ * Format: int32
853
+ * @description Enum of user flags
854
+ */
855
+ flags?: number | null;
856
+ /** @description Fields to remove from user object */
857
+ remove?: components["schemas"]["FieldsUser"][] | null;
858
+ };
859
+ /** @description New user profile data */
860
+ DataUserProfile: {
861
+ /** @description Text to set as user profile description */
862
+ content?: string | null;
863
+ /** @description Attachment Id for background */
864
+ background?: string | null;
865
+ };
866
+ /**
867
+ * @description Optional fields on user object
868
+ * @enum {string}
869
+ */
870
+ FieldsUser: "Avatar" | "StatusText" | "StatusPresence" | "ProfileContent" | "ProfileBackground" | "DisplayName";
871
+ /** Username Information */
872
+ DataChangeUsername: {
873
+ /** @description New username */
874
+ username: string;
875
+ /** @description Current account password */
876
+ password: string;
877
+ };
878
+ /** @description User's profile */
879
+ UserProfile: {
880
+ /** @description Text content on user's profile */
881
+ content?: string | null;
882
+ /** @description Background visible on user's profile */
883
+ background?: components["schemas"]["File"] | null;
884
+ };
885
+ /** @description Channel */
886
+ Channel: {
887
+ /** @enum {string} */
888
+ channel_type: "SavedMessages";
889
+ /** @description Unique Id */
890
+ _id: string;
891
+ /** @description Id of the user this channel belongs to */
892
+ user: string;
893
+ } | {
894
+ /** @enum {string} */
895
+ channel_type: "DirectMessage";
896
+ /** @description Unique Id */
897
+ _id: string;
898
+ /** @description Whether this direct message channel is currently open on both sides */
899
+ active: boolean;
900
+ /** @description 2-tuple of user ids participating in direct message */
901
+ recipients: string[];
902
+ /** @description Id of the last message sent in this channel */
903
+ last_message_id?: string | null;
904
+ } | {
905
+ /** @enum {string} */
906
+ channel_type: "Group";
907
+ /** @description Unique Id */
908
+ _id: string;
909
+ /** @description Display name of the channel */
910
+ name: string;
911
+ /** @description User id of the owner of the group */
912
+ owner: string;
913
+ /** @description Channel description */
914
+ description?: string | null;
915
+ /** @description Array of user ids participating in channel */
916
+ recipients: string[];
917
+ /** @description Custom icon attachment */
918
+ icon?: components["schemas"]["File"] | null;
919
+ /** @description Id of the last message sent in this channel */
920
+ last_message_id?: string | null;
921
+ /**
922
+ * Format: int64
923
+ * @description Permissions assigned to members of this group (does not apply to the owner of the group)
924
+ */
925
+ permissions?: number | null;
926
+ /** @description Whether this group is marked as not safe for work */
927
+ nsfw?: boolean;
928
+ } | {
929
+ /** @enum {string} */
930
+ channel_type: "TextChannel";
931
+ /** @description Unique Id */
932
+ _id: string;
933
+ /** @description Id of the server this channel belongs to */
934
+ server: string;
935
+ /** @description Display name of the channel */
936
+ name: string;
937
+ /** @description Channel description */
938
+ description?: string | null;
939
+ /** @description Custom icon attachment */
940
+ icon?: components["schemas"]["File"] | null;
941
+ /** @description Id of the last message sent in this channel */
942
+ last_message_id?: string | null;
943
+ /** @description Default permissions assigned to users in this channel */
944
+ default_permissions?: components["schemas"]["OverrideField"] | null;
945
+ /** @description Permissions assigned based on role to this channel */
946
+ role_permissions?: {
947
+ [key: string]: components["schemas"]["OverrideField"];
948
+ };
949
+ /** @description Whether this channel is marked as not safe for work */
950
+ nsfw?: boolean;
951
+ } | {
952
+ /** @enum {string} */
953
+ channel_type: "VoiceChannel";
954
+ /** @description Unique Id */
955
+ _id: string;
956
+ /** @description Id of the server this channel belongs to */
957
+ server: string;
958
+ /** @description Display name of the channel */
959
+ name: string;
960
+ /** @description Channel description */
961
+ description?: string | null;
962
+ /** @description Custom icon attachment */
963
+ icon?: components["schemas"]["File"] | null;
964
+ /** @description Default permissions assigned to users in this channel */
965
+ default_permissions?: components["schemas"]["OverrideField"] | null;
966
+ /** @description Permissions assigned based on role to this channel */
967
+ role_permissions?: {
968
+ [key: string]: components["schemas"]["OverrideField"];
969
+ };
970
+ /** @description Whether this channel is marked as not safe for work */
971
+ nsfw?: boolean;
972
+ };
973
+ /** @description Representation of a single permission override as it appears on models and in the database */
974
+ OverrideField: {
975
+ /**
976
+ * Format: int64
977
+ * @description Allow bit flags
978
+ */
979
+ a: number;
980
+ /**
981
+ * Format: int64
982
+ * @description Disallow bit flags
983
+ */
984
+ d: number;
985
+ };
986
+ /** @description Mutual friends and servers response */
987
+ MutualResponse: {
988
+ /** @description Array of mutual user IDs that both users are friends with */
989
+ users: string[];
990
+ /** @description Array of mutual server IDs that both users are in */
991
+ servers: string[];
992
+ };
993
+ /** @description User lookup information */
994
+ DataSendFriendRequest: {
995
+ /** @description Username and discriminator combo separated by # */
996
+ username: string;
997
+ };
998
+ /** @description Bot with user response */
999
+ BotWithUserResponse: {
1000
+ user: components["schemas"]["User"];
1001
+ /** @description Bot Id */
1002
+ _id: string;
1003
+ /** @description User Id of the bot owner */
1004
+ owner: string;
1005
+ /** @description Token used to authenticate requests for this bot */
1006
+ token: string;
1007
+ /** @description Whether the bot is public (may be invited by anyone) */
1008
+ public: boolean;
1009
+ /** @description Whether to enable analytics */
1010
+ analytics?: boolean;
1011
+ /** @description Whether this bot should be publicly discoverable */
1012
+ discoverable?: boolean;
1013
+ /** @description Reserved; URL for handling interactions */
1014
+ interactions_url?: string;
1015
+ /** @description URL for terms of service */
1016
+ terms_of_service_url?: string;
1017
+ /** @description URL for privacy policy */
1018
+ privacy_policy_url?: string;
1019
+ /**
1020
+ * Format: uint32
1021
+ * @description Enum of bot flags
1022
+ */
1023
+ flags?: number;
1024
+ };
1025
+ /** @description Bot Details */
1026
+ DataCreateBot: {
1027
+ /** @description Bot username */
1028
+ name: string;
1029
+ };
1030
+ /** @description Where we are inviting a bot to */
1031
+ InviteBotDestination: {
1032
+ /** @description Server Id */
1033
+ server: string;
1034
+ } | {
1035
+ /** @description Group Id */
1036
+ group: string;
1037
+ };
1038
+ /** @description Public Bot */
1039
+ PublicBot: {
1040
+ /** @description Bot Id */
1041
+ _id: string;
1042
+ /** @description Bot Username */
1043
+ username: string;
1044
+ /** @description Profile Avatar */
1045
+ avatar?: string;
1046
+ /** @description Profile Description */
1047
+ description?: string;
1048
+ };
1049
+ /** @description Bot Response */
1050
+ FetchBotResponse: {
1051
+ /** @description Bot object */
1052
+ bot: components["schemas"]["Bot"];
1053
+ /** @description User object */
1054
+ user: components["schemas"]["User"];
1055
+ };
1056
+ /** @description Bot */
1057
+ Bot: {
1058
+ /** @description Bot Id */
1059
+ _id: string;
1060
+ /** @description User Id of the bot owner */
1061
+ owner: string;
1062
+ /** @description Token used to authenticate requests for this bot */
1063
+ token: string;
1064
+ /** @description Whether the bot is public (may be invited by anyone) */
1065
+ public: boolean;
1066
+ /** @description Whether to enable analytics */
1067
+ analytics?: boolean;
1068
+ /** @description Whether this bot should be publicly discoverable */
1069
+ discoverable?: boolean;
1070
+ /** @description Reserved; URL for handling interactions */
1071
+ interactions_url?: string;
1072
+ /** @description URL for terms of service */
1073
+ terms_of_service_url?: string;
1074
+ /** @description URL for privacy policy */
1075
+ privacy_policy_url?: string;
1076
+ /**
1077
+ * Format: uint32
1078
+ * @description Enum of bot flags
1079
+ */
1080
+ flags?: number;
1081
+ };
1082
+ /**
1083
+ * @description Owned Bots Response
1084
+ *
1085
+ * Both lists are sorted by their IDs.
1086
+ *
1087
+ * TODO: user should be in bot object
1088
+ */
1089
+ OwnedBotsResponse: {
1090
+ /** @description Bot objects */
1091
+ bots: components["schemas"]["Bot"][];
1092
+ /** @description User objects */
1093
+ users: components["schemas"]["User"][];
1094
+ };
1095
+ /** @description New Bot Details */
1096
+ DataEditBot: {
1097
+ /** @description Bot username */
1098
+ name?: string | null;
1099
+ /** @description Whether the bot can be added by anyone */
1100
+ public?: boolean | null;
1101
+ /**
1102
+ * @description Whether analytics should be gathered for this bot
1103
+ *
1104
+ * Must be enabled in order to show up on [Hischool Discover](https://rvlt.gg).
1105
+ */
1106
+ analytics?: boolean | null;
1107
+ /** @description Interactions URL */
1108
+ interactions_url?: string | null;
1109
+ /** @description Fields to remove from bot object */
1110
+ remove?: components["schemas"]["FieldsBot"][] | null;
1111
+ };
1112
+ /**
1113
+ * @description Optional fields on bot object
1114
+ * @enum {string}
1115
+ */
1116
+ FieldsBot: "Token" | "InteractionsURL";
1117
+ /** @description New webhook information */
1118
+ DataEditChannel: {
1119
+ /** @description Channel name */
1120
+ name?: string | null;
1121
+ /** @description Channel description */
1122
+ description?: string | null;
1123
+ /** @description Group owner */
1124
+ owner?: string | null;
1125
+ /**
1126
+ * @description Icon
1127
+ *
1128
+ * Provide an Autumn attachment Id.
1129
+ */
1130
+ icon?: string | null;
1131
+ /** @description Whether this channel is age-restricted */
1132
+ nsfw?: boolean | null;
1133
+ /** @description Whether this channel is archived */
1134
+ archived?: boolean | null;
1135
+ /** @description Fields to remove from channel */
1136
+ remove?: components["schemas"]["FieldsChannel"][] | null;
1137
+ };
1138
+ /**
1139
+ * @description Optional fields on channel object
1140
+ * @enum {string}
1141
+ */
1142
+ FieldsChannel: "Description" | "Icon" | "DefaultPermissions";
1143
+ /** @description Invite */
1144
+ Invite: {
1145
+ /** @enum {string} */
1146
+ type: "Server";
1147
+ /** @description Invite code */
1148
+ _id: string;
1149
+ /** @description Id of the server this invite points to */
1150
+ server: string;
1151
+ /** @description Id of user who created this invite */
1152
+ creator: string;
1153
+ /** @description Id of the server channel this invite points to */
1154
+ channel: string;
1155
+ } | {
1156
+ /** @enum {string} */
1157
+ type: "Group";
1158
+ /** @description Invite code */
1159
+ _id: string;
1160
+ /** @description Id of user who created this invite */
1161
+ creator: string;
1162
+ /** @description Id of the group channel this invite points to */
1163
+ channel: string;
1164
+ };
1165
+ /** @description Message */
1166
+ Message: {
1167
+ /** @description Unique Id */
1168
+ _id: string;
1169
+ /** @description Unique value generated by client sending this message */
1170
+ nonce?: string | null;
1171
+ /** @description Id of the channel this message was sent in */
1172
+ channel: string;
1173
+ /** @description Id of the user or webhook that sent this message */
1174
+ author: string;
1175
+ /** @description The user that sent this message */
1176
+ user?: components["schemas"]["User"] | null;
1177
+ /** @description The member that sent this message */
1178
+ member?: components["schemas"]["Member"] | null;
1179
+ /** @description The webhook that sent this message */
1180
+ webhook?: components["schemas"]["MessageWebhook"] | null;
1181
+ /** @description Message content */
1182
+ content?: string | null;
1183
+ /** @description System message */
1184
+ system?: components["schemas"]["SystemMessage"] | null;
1185
+ /** @description Array of attachments */
1186
+ attachments?: components["schemas"]["File"][] | null;
1187
+ /** @description Time at which this message was last edited */
1188
+ edited?: components["schemas"]["ISO8601 Timestamp"] | null;
1189
+ /** @description Attached embeds to this message */
1190
+ embeds?: components["schemas"]["Embed"][] | null;
1191
+ /** @description Array of user ids mentioned in this message */
1192
+ mentions?: string[] | null;
1193
+ /** @description Array of message ids this message is replying to */
1194
+ replies?: string[] | null;
1195
+ /** @description Hashmap of emoji IDs to array of user IDs */
1196
+ reactions?: {
1197
+ [key: string]: string[];
1198
+ };
1199
+ /** @description Information about how this message should be interacted with */
1200
+ interactions?: components["schemas"]["Interactions"];
1201
+ /** @description Name and / or avatar overrides for this message */
1202
+ masquerade?: components["schemas"]["Masquerade"] | null;
1203
+ /** @description Whether or not the message in pinned */
1204
+ pinned?: boolean | null;
1205
+ /**
1206
+ * Format: uint32
1207
+ * @description Bitfield of message flags
1208
+ *
1209
+ * https://docs.rs/hischool-models/latest/hischool_models/v0/enum.MessageFlags.html
1210
+ */
1211
+ flags?: number;
1212
+ };
1213
+ /** @description Server Member */
1214
+ Member: {
1215
+ /** @description Unique member id */
1216
+ _id: components["schemas"]["MemberCompositeKey"];
1217
+ /** @description Time at which this user joined the server */
1218
+ joined_at: components["schemas"]["ISO8601 Timestamp"];
1219
+ /** @description Member's nickname */
1220
+ nickname?: string | null;
1221
+ /** @description Avatar attachment */
1222
+ avatar?: components["schemas"]["File"] | null;
1223
+ /** @description Member's roles */
1224
+ roles?: string[];
1225
+ /** @description Timestamp this member is timed out until */
1226
+ timeout?: components["schemas"]["ISO8601 Timestamp"] | null;
1227
+ };
1228
+ /** @description Composite primary key consisting of server and user id */
1229
+ MemberCompositeKey: {
1230
+ /** @description Server Id */
1231
+ server: string;
1232
+ /** @description User Id */
1233
+ user: string;
1234
+ };
1235
+ /**
1236
+ * Format: date-time
1237
+ * @description ISO8601 formatted timestamp
1238
+ * @example 1970-01-01T00:00:00Z
1239
+ */
1240
+ "ISO8601 Timestamp": string;
1241
+ /** @description Information about the webhook bundled with Message */
1242
+ MessageWebhook: {
1243
+ name: string;
1244
+ avatar?: string | null;
1245
+ };
1246
+ /** @description System Event */
1247
+ SystemMessage: {
1248
+ /** @enum {string} */
1249
+ type: "text";
1250
+ content: string;
1251
+ } | {
1252
+ /** @enum {string} */
1253
+ type: "user_added";
1254
+ id: string;
1255
+ by: string;
1256
+ } | {
1257
+ /** @enum {string} */
1258
+ type: "user_remove";
1259
+ id: string;
1260
+ by: string;
1261
+ } | {
1262
+ /** @enum {string} */
1263
+ type: "user_joined";
1264
+ id: string;
1265
+ } | {
1266
+ /** @enum {string} */
1267
+ type: "user_left";
1268
+ id: string;
1269
+ } | {
1270
+ /** @enum {string} */
1271
+ type: "user_kicked";
1272
+ id: string;
1273
+ } | {
1274
+ /** @enum {string} */
1275
+ type: "user_banned";
1276
+ id: string;
1277
+ } | {
1278
+ /** @enum {string} */
1279
+ type: "channel_renamed";
1280
+ name: string;
1281
+ by: string;
1282
+ } | {
1283
+ /** @enum {string} */
1284
+ type: "channel_description_changed";
1285
+ by: string;
1286
+ } | {
1287
+ /** @enum {string} */
1288
+ type: "channel_icon_changed";
1289
+ by: string;
1290
+ } | {
1291
+ /** @enum {string} */
1292
+ type: "channel_ownership_changed";
1293
+ from: string;
1294
+ to: string;
1295
+ } | {
1296
+ /** @enum {string} */
1297
+ type: "message_pinned";
1298
+ id: string;
1299
+ by: string;
1300
+ } | {
1301
+ /** @enum {string} */
1302
+ type: "message_unpinned";
1303
+ id: string;
1304
+ by: string;
1305
+ };
1306
+ /** @description Embed */
1307
+ Embed: {
1308
+ /** @enum {string} */
1309
+ type: "Website";
1310
+ /** @description Direct URL to web page */
1311
+ url?: string | null;
1312
+ /** @description Original direct URL */
1313
+ original_url?: string | null;
1314
+ /** @description Remote content */
1315
+ special?: components["schemas"]["Special"] | null;
1316
+ /** @description Title of website */
1317
+ title?: string | null;
1318
+ /** @description Description of website */
1319
+ description?: string | null;
1320
+ /** @description Embedded image */
1321
+ image?: components["schemas"]["Image"] | null;
1322
+ /** @description Embedded video */
1323
+ video?: components["schemas"]["Video"] | null;
1324
+ /** @description Site name */
1325
+ site_name?: string | null;
1326
+ /** @description URL to site icon */
1327
+ icon_url?: string | null;
1328
+ /** @description CSS Colour */
1329
+ colour?: string | null;
1330
+ } | {
1331
+ /** @enum {string} */
1332
+ type: "Image";
1333
+ /** @description URL to the original image */
1334
+ url: string;
1335
+ /**
1336
+ * Format: int
1337
+ * @description Width of the image
1338
+ */
1339
+ width: number;
1340
+ /**
1341
+ * Format: int
1342
+ * @description Height of the image
1343
+ */
1344
+ height: number;
1345
+ /** @description Positioning and size */
1346
+ size: components["schemas"]["ImageSize"];
1347
+ } | {
1348
+ /** @enum {string} */
1349
+ type: "Video";
1350
+ /** @description URL to the original video */
1351
+ url: string;
1352
+ /**
1353
+ * Format: int
1354
+ * @description Width of the video
1355
+ */
1356
+ width: number;
1357
+ /**
1358
+ * Format: int
1359
+ * @description Height of the video
1360
+ */
1361
+ height: number;
1362
+ } | {
1363
+ /** @enum {string} */
1364
+ type: "Text";
1365
+ /** @description URL to icon */
1366
+ icon_url?: string | null;
1367
+ /** @description URL for title */
1368
+ url?: string | null;
1369
+ /** @description Title of text embed */
1370
+ title?: string | null;
1371
+ /** @description Description of text embed */
1372
+ description?: string | null;
1373
+ /** @description ID of uploaded autumn file */
1374
+ media?: components["schemas"]["File"] | null;
1375
+ /** @description CSS Colour */
1376
+ colour?: string | null;
1377
+ } | {
1378
+ /** @enum {string} */
1379
+ type: "None";
1380
+ };
1381
+ /** @description Information about special remote content */
1382
+ Special: {
1383
+ /** @enum {string} */
1384
+ type: "None";
1385
+ } | {
1386
+ /** @enum {string} */
1387
+ type: "GIF";
1388
+ } | {
1389
+ /** @enum {string} */
1390
+ type: "YouTube";
1391
+ id: string;
1392
+ timestamp?: string | null;
1393
+ } | {
1394
+ /** @enum {string} */
1395
+ type: "Lightspeed";
1396
+ content_type: components["schemas"]["LightspeedType"];
1397
+ id: string;
1398
+ } | {
1399
+ /** @enum {string} */
1400
+ type: "Twitch";
1401
+ content_type: components["schemas"]["TwitchType"];
1402
+ id: string;
1403
+ } | {
1404
+ /** @enum {string} */
1405
+ type: "Spotify";
1406
+ content_type: string;
1407
+ id: string;
1408
+ } | {
1409
+ /** @enum {string} */
1410
+ type: "Soundcloud";
1411
+ } | {
1412
+ /** @enum {string} */
1413
+ type: "Bandcamp";
1414
+ content_type: components["schemas"]["BandcampType"];
1415
+ id: string;
1416
+ } | {
1417
+ /** @enum {string} */
1418
+ type: "Streamable";
1419
+ id: string;
1420
+ };
1421
+ /**
1422
+ * @description Type of remote Lightspeed.tv content
1423
+ * @enum {string}
1424
+ */
1425
+ LightspeedType: "Channel";
1426
+ /**
1427
+ * @description Type of remote Twitch content
1428
+ * @enum {string}
1429
+ */
1430
+ TwitchType: "Channel" | "Video" | "Clip";
1431
+ /**
1432
+ * @description Type of remote Bandcamp content
1433
+ * @enum {string}
1434
+ */
1435
+ BandcampType: "Album" | "Track";
1436
+ /** @description Image */
1437
+ Image: {
1438
+ /** @description URL to the original image */
1439
+ url: string;
1440
+ /**
1441
+ * Format: int
1442
+ * @description Width of the image
1443
+ */
1444
+ width: number;
1445
+ /**
1446
+ * Format: int
1447
+ * @description Height of the image
1448
+ */
1449
+ height: number;
1450
+ /** @description Positioning and size */
1451
+ size: components["schemas"]["ImageSize"];
1452
+ };
1453
+ /**
1454
+ * @description Image positioning and size
1455
+ * @enum {string}
1456
+ */
1457
+ ImageSize: "Large" | "Preview";
1458
+ /** @description Video */
1459
+ Video: {
1460
+ /** @description URL to the original video */
1461
+ url: string;
1462
+ /**
1463
+ * Format: int
1464
+ * @description Width of the video
1465
+ */
1466
+ width: number;
1467
+ /**
1468
+ * Format: int
1469
+ * @description Height of the video
1470
+ */
1471
+ height: number;
1472
+ };
1473
+ /** @description Information to guide interactions on this message */
1474
+ Interactions: {
1475
+ /** @description Reactions which should always appear and be distinct */
1476
+ reactions?: string[] | null;
1477
+ /**
1478
+ * @description Whether reactions should be restricted to the given list
1479
+ *
1480
+ * Can only be set to true if reactions list is of at least length 1
1481
+ */
1482
+ restrict_reactions?: boolean;
1483
+ };
1484
+ /** @description Name and / or avatar override information */
1485
+ Masquerade: {
1486
+ /** @description Replace the display name shown on this message */
1487
+ name?: string | null;
1488
+ /** @description Replace the avatar shown on this message (URL to image file) */
1489
+ avatar?: string | null;
1490
+ /**
1491
+ * @description Replace the display role colour shown on this message
1492
+ *
1493
+ * Must have `ManageRole` permission to use
1494
+ */
1495
+ colour?: string | null;
1496
+ };
1497
+ /** @description Message to send */
1498
+ DataMessageSend: {
1499
+ /**
1500
+ * @description Unique token to prevent duplicate message sending
1501
+ *
1502
+ * **This is deprecated and replaced by `Idempotency-Key`!**
1503
+ */
1504
+ nonce?: string | null;
1505
+ /** @description Message content to send */
1506
+ content?: string | null;
1507
+ /** @description Attachments to include in message */
1508
+ attachments?: string[] | null;
1509
+ /** @description Messages to reply to */
1510
+ replies?: components["schemas"]["ReplyIntent"][] | null;
1511
+ /**
1512
+ * @description Embeds to include in message
1513
+ *
1514
+ * Text embed content contributes to the content length cap
1515
+ */
1516
+ embeds?: components["schemas"]["SendableEmbed"][] | null;
1517
+ /** @description Masquerade to apply to this message */
1518
+ masquerade?: components["schemas"]["Masquerade"] | null;
1519
+ /** @description Information about how this message should be interacted with */
1520
+ interactions?: components["schemas"]["Interactions"] | null;
1521
+ /**
1522
+ * Format: uint32
1523
+ * @description Bitfield of message flags
1524
+ *
1525
+ * https://docs.rs/hischool-models/latest/hischool_models/v0/enum.MessageFlags.html
1526
+ */
1527
+ flags?: number | null;
1528
+ };
1529
+ /** @description What this message should reply to and how */
1530
+ ReplyIntent: {
1531
+ /** @description Message Id */
1532
+ id: string;
1533
+ /** @description Whether this reply should mention the message's author */
1534
+ mention: boolean;
1535
+ };
1536
+ /** @description Representation of a text embed before it is sent. */
1537
+ SendableEmbed: {
1538
+ icon_url?: string | null;
1539
+ url?: string | null;
1540
+ title?: string | null;
1541
+ description?: string | null;
1542
+ media?: string | null;
1543
+ colour?: string | null;
1544
+ };
1545
+ /** @description Bulk Message Response */
1546
+ BulkMessageResponse: components["schemas"]["Message"][] | {
1547
+ /** @description List of messages */
1548
+ messages: components["schemas"]["Message"][];
1549
+ /** @description List of users */
1550
+ users: components["schemas"]["User"][];
1551
+ /** @description List of members */
1552
+ members?: components["schemas"]["Member"][] | null;
1553
+ };
1554
+ /**
1555
+ * @description Message Sort
1556
+ *
1557
+ * Sort used for retrieving messages
1558
+ * @enum {string}
1559
+ */
1560
+ MessageSort: "Relevance" | "Latest" | "Oldest";
1561
+ /** @description Options for searching for messages */
1562
+ DataMessageSearch: {
1563
+ /**
1564
+ * @description Full-text search query
1565
+ *
1566
+ * See [MongoDB documentation](https://docs.mongodb.com/manual/text-search/#-text-operator) for more information.
1567
+ */
1568
+ query?: string | null;
1569
+ /** @description Whether to only search for pinned messages, cannot be sent with `query`. */
1570
+ pinned?: boolean | null;
1571
+ /**
1572
+ * Format: int64
1573
+ * @description Maximum number of messages to fetch
1574
+ */
1575
+ limit?: number | null;
1576
+ /** @description Message id before which messages should be fetched */
1577
+ before?: string | null;
1578
+ /** @description Message id after which messages should be fetched */
1579
+ after?: string | null;
1580
+ /**
1581
+ * @description Message sort direction
1582
+ *
1583
+ * By default, it will be sorted by latest.
1584
+ * @default Relevance
1585
+ */
1586
+ sort?: components["schemas"]["MessageSort"];
1587
+ /** @description Whether to include user (and member, if server channel) objects */
1588
+ include_users?: boolean | null;
1589
+ };
1590
+ /** @description Changes to make to message */
1591
+ DataEditMessage: {
1592
+ /** @description New message content */
1593
+ content?: string | null;
1594
+ /** @description Embeds to include in the message */
1595
+ embeds?: components["schemas"]["SendableEmbed"][] | null;
1596
+ };
1597
+ /** @description Options for bulk deleting messages */
1598
+ OptionsBulkDelete: {
1599
+ /** @description Message IDs */
1600
+ ids: string[];
1601
+ };
1602
+ /** @description Create new group */
1603
+ DataCreateGroup: {
1604
+ /** @description Group name */
1605
+ name: string;
1606
+ /** @description Group description */
1607
+ description?: string | null;
1608
+ /** @description Group icon */
1609
+ icon?: string | null;
1610
+ /**
1611
+ * @description Array of user IDs to add to the group
1612
+ *
1613
+ * Must be friends with these users.
1614
+ * @default
1615
+ */
1616
+ users?: string[];
1617
+ /** @description Whether this group is age-restricted */
1618
+ nsfw?: boolean | null;
1619
+ };
1620
+ /** @description Voice server token response */
1621
+ LegacyCreateVoiceUserResponse: {
1622
+ /** @description Token for authenticating with the voice server */
1623
+ token: string;
1624
+ };
1625
+ /** @description New role permissions */
1626
+ DataSetRolePermissions: {
1627
+ /** @description Allow / deny values to set for this role */
1628
+ permissions: components["schemas"]["Override"];
1629
+ };
1630
+ /** @description Representation of a single permission override */
1631
+ Override: {
1632
+ /**
1633
+ * Format: uint64
1634
+ * @description Allow bit flags
1635
+ */
1636
+ allow: number;
1637
+ /**
1638
+ * Format: uint64
1639
+ * @description Disallow bit flags
1640
+ */
1641
+ deny: number;
1642
+ };
1643
+ /** @description New default permissions */
1644
+ DataDefaultChannelPermissions: {
1645
+ /**
1646
+ * Format: uint64
1647
+ * @description Permission values to set for members in a `Group`
1648
+ */
1649
+ permissions: number;
1650
+ } | {
1651
+ /** @description Allow / deny values to set for members in this `TextChannel` or `VoiceChannel` */
1652
+ permissions: components["schemas"]["Override"];
1653
+ };
1654
+ /** @description Webhook */
1655
+ Webhook: {
1656
+ /** @description Webhook Id */
1657
+ id: string;
1658
+ /** @description The name of the webhook */
1659
+ name: string;
1660
+ /** @description The avatar of the webhook */
1661
+ avatar?: components["schemas"]["File"] | null;
1662
+ /** @description The channel this webhook belongs to */
1663
+ channel_id: string;
1664
+ /**
1665
+ * Format: uint64
1666
+ * @description The permissions for the webhook
1667
+ */
1668
+ permissions: number;
1669
+ /** @description The private token for the webhook */
1670
+ token?: string | null;
1671
+ };
1672
+ /** @description Information for the webhook */
1673
+ CreateWebhookBody: {
1674
+ name: string;
1675
+ avatar?: string | null;
1676
+ };
1677
+ /** @description Information returned when creating server */
1678
+ CreateServerLegacyResponse: {
1679
+ /** @description Server object */
1680
+ server: components["schemas"]["Server"];
1681
+ /** @description Default channels */
1682
+ channels: components["schemas"]["Channel"][];
1683
+ };
1684
+ /** @description Server */
1685
+ Server: {
1686
+ /** @description Unique Id */
1687
+ _id: string;
1688
+ /** @description User id of the owner */
1689
+ owner: string;
1690
+ /** @description Name of the server */
1691
+ name: string;
1692
+ /** @description Description for the server */
1693
+ description?: string | null;
1694
+ /** @description Channels within this server */
1695
+ channels: string[];
1696
+ /** @description Categories for this server */
1697
+ categories?: components["schemas"]["Category"][] | null;
1698
+ /** @description Configuration for sending system event messages */
1699
+ system_messages?: components["schemas"]["SystemMessageChannels"] | null;
1700
+ /** @description Roles for this server */
1701
+ roles?: {
1702
+ [key: string]: components["schemas"]["Role"];
1703
+ };
1704
+ /**
1705
+ * Format: int64
1706
+ * @description Default set of server and channel permissions
1707
+ */
1708
+ default_permissions: number;
1709
+ /** @description Icon attachment */
1710
+ icon?: components["schemas"]["File"] | null;
1711
+ /** @description Banner attachment */
1712
+ banner?: components["schemas"]["File"] | null;
1713
+ /**
1714
+ * Format: uint32
1715
+ * @description Bitfield of server flags
1716
+ */
1717
+ flags?: number;
1718
+ /** @description Whether this server is flagged as not safe for work */
1719
+ nsfw?: boolean;
1720
+ /** @description Whether to enable analytics */
1721
+ analytics?: boolean;
1722
+ /** @description Whether this server should be publicly discoverable */
1723
+ discoverable?: boolean;
1724
+ };
1725
+ /** @description Channel category */
1726
+ Category: {
1727
+ /** @description Unique ID for this category */
1728
+ id: string;
1729
+ /** @description Title for this category */
1730
+ title: string;
1731
+ /** @description Channels in this category */
1732
+ channels: string[];
1733
+ };
1734
+ /** @description System message channel assignments */
1735
+ SystemMessageChannels: {
1736
+ /** @description ID of channel to send user join messages in */
1737
+ user_joined?: string | null;
1738
+ /** @description ID of channel to send user left messages in */
1739
+ user_left?: string | null;
1740
+ /** @description ID of channel to send user kicked messages in */
1741
+ user_kicked?: string | null;
1742
+ /** @description ID of channel to send user banned messages in */
1743
+ user_banned?: string | null;
1744
+ };
1745
+ /** @description Role */
1746
+ Role: {
1747
+ /** @description Role name */
1748
+ name: string;
1749
+ /** @description Permissions available to this role */
1750
+ permissions: components["schemas"]["OverrideField"];
1751
+ /**
1752
+ * @description Colour used for this role
1753
+ *
1754
+ * This can be any valid CSS colour
1755
+ */
1756
+ colour?: string | null;
1757
+ /** @description Whether this role should be shown separately on the member sidebar */
1758
+ hoist?: boolean;
1759
+ /**
1760
+ * Format: int64
1761
+ * @description Ranking of this role
1762
+ */
1763
+ rank?: number;
1764
+ };
1765
+ /** @description Information about new server to create */
1766
+ DataCreateServer: {
1767
+ /** @description Server name */
1768
+ name: string;
1769
+ /** @description Server description */
1770
+ description?: string | null;
1771
+ /** @description Whether this server is age-restricted */
1772
+ nsfw?: boolean | null;
1773
+ };
1774
+ /** @description Fetch server information */
1775
+ FetchServerResponse: components["schemas"]["Server"] | {
1776
+ /** @description Channels within this server */
1777
+ channels: string[];
1778
+ /** @description Unique Id */
1779
+ _id: string;
1780
+ /** @description User id of the owner */
1781
+ owner: string;
1782
+ /** @description Name of the server */
1783
+ name: string;
1784
+ /** @description Description for the server */
1785
+ description?: string | null;
1786
+ /** @description Categories for this server */
1787
+ categories?: components["schemas"]["Category"][] | null;
1788
+ /** @description Configuration for sending system event messages */
1789
+ system_messages?: components["schemas"]["SystemMessageChannels"] | null;
1790
+ /** @description Roles for this server */
1791
+ roles?: {
1792
+ [key: string]: components["schemas"]["Role"];
1793
+ };
1794
+ /**
1795
+ * Format: int64
1796
+ * @description Default set of server and channel permissions
1797
+ */
1798
+ default_permissions: number;
1799
+ /** @description Icon attachment */
1800
+ icon?: components["schemas"]["File"] | null;
1801
+ /** @description Banner attachment */
1802
+ banner?: components["schemas"]["File"] | null;
1803
+ /**
1804
+ * Format: uint32
1805
+ * @description Bitfield of server flags
1806
+ */
1807
+ flags?: number;
1808
+ /** @description Whether this server is flagged as not safe for work */
1809
+ nsfw?: boolean;
1810
+ /** @description Whether to enable analytics */
1811
+ analytics?: boolean;
1812
+ /** @description Whether this server should be publicly discoverable */
1813
+ discoverable?: boolean;
1814
+ };
1815
+ /** @description New server information */
1816
+ DataEditServer: {
1817
+ /** @description Server name */
1818
+ name?: string | null;
1819
+ /** @description Server description */
1820
+ description?: string | null;
1821
+ /** @description Attachment Id for icon */
1822
+ icon?: string | null;
1823
+ /** @description Attachment Id for banner */
1824
+ banner?: string | null;
1825
+ /** @description Category structure for server */
1826
+ categories?: components["schemas"]["Category"][] | null;
1827
+ /** @description System message configuration */
1828
+ system_messages?: components["schemas"]["SystemMessageChannels"] | null;
1829
+ /**
1830
+ * Format: int32
1831
+ * @description Bitfield of server flags
1832
+ */
1833
+ flags?: number | null;
1834
+ /** @description Whether this server is public and should show up on [Hischool Discover](https://rvlt.gg) */
1835
+ discoverable?: boolean | null;
1836
+ /**
1837
+ * @description Whether analytics should be collected for this server
1838
+ *
1839
+ * Must be enabled in order to show up on [Hischool Discover](https://rvlt.gg).
1840
+ */
1841
+ analytics?: boolean | null;
1842
+ /** @description Fields to remove from server object */
1843
+ remove?: components["schemas"]["FieldsServer"][] | null;
1844
+ };
1845
+ /**
1846
+ * @description Optional fields on server object
1847
+ * @enum {string}
1848
+ */
1849
+ FieldsServer: "Description" | "Categories" | "SystemMessages" | "Icon" | "Banner";
1850
+ /** @description Create new server channel */
1851
+ DataCreateServerChannel: {
1852
+ /**
1853
+ * @description Channel type
1854
+ * @default Text
1855
+ */
1856
+ type?: components["schemas"]["LegacyServerChannelType"];
1857
+ /** @description Channel name */
1858
+ name: string;
1859
+ /** @description Channel description */
1860
+ description?: string | null;
1861
+ /** @description Whether this channel is age restricted */
1862
+ nsfw?: boolean | null;
1863
+ };
1864
+ /**
1865
+ * @description Server Channel Type
1866
+ * @enum {string}
1867
+ */
1868
+ LegacyServerChannelType: "Text" | "Voice";
1869
+ /** @description Response with all members */
1870
+ AllMemberResponse: {
1871
+ /** @description List of members */
1872
+ members: components["schemas"]["Member"][];
1873
+ /** @description List of users */
1874
+ users: components["schemas"]["User"][];
1875
+ };
1876
+ /** @description Member response */
1877
+ MemberResponse: components["schemas"]["Member"] | {
1878
+ member: components["schemas"]["Member"];
1879
+ roles: {
1880
+ [key: string]: components["schemas"]["Role"];
1881
+ };
1882
+ };
1883
+ /** @description New member information */
1884
+ DataMemberEdit: {
1885
+ /** @description Member nickname */
1886
+ nickname?: string | null;
1887
+ /** @description Attachment Id to set for avatar */
1888
+ avatar?: string | null;
1889
+ /** @description Array of role ids */
1890
+ roles?: string[] | null;
1891
+ /** @description Timestamp this member is timed out until */
1892
+ timeout?: components["schemas"]["ISO8601 Timestamp"] | null;
1893
+ /** @description Fields to remove from channel object */
1894
+ remove?: components["schemas"]["FieldsMember"][] | null;
1895
+ };
1896
+ /**
1897
+ * @description Optional fields on server member object
1898
+ * @enum {string}
1899
+ */
1900
+ FieldsMember: "Nickname" | "Avatar" | "Roles" | "Timeout";
1901
+ /** Query members by name */
1902
+ MemberQueryResponse: {
1903
+ /** @description List of members */
1904
+ members: components["schemas"]["Member"][];
1905
+ /** @description List of users */
1906
+ users: components["schemas"]["User"][];
1907
+ };
1908
+ /** @description Server Ban */
1909
+ ServerBan: {
1910
+ /** @description Unique member id */
1911
+ _id: components["schemas"]["MemberCompositeKey"];
1912
+ /** @description Reason for ban creation */
1913
+ reason?: string | null;
1914
+ };
1915
+ /** @description Information for new server ban */
1916
+ DataBanCreate: {
1917
+ /** @description Ban reason */
1918
+ reason?: string | null;
1919
+ };
1920
+ /** @description Ban list result */
1921
+ BanListResult: {
1922
+ /** @description Users objects */
1923
+ users: components["schemas"]["BannedUser"][];
1924
+ /** @description Ban objects */
1925
+ bans: components["schemas"]["ServerBan"][];
1926
+ };
1927
+ /** @description Just enough information to list a ban */
1928
+ BannedUser: {
1929
+ /** @description Id of the banned user */
1930
+ _id: string;
1931
+ /** @description Username of the banned user */
1932
+ username: string;
1933
+ /** @description Discriminator of the banned user */
1934
+ discriminator: string;
1935
+ /** @description Avatar of the banned user */
1936
+ avatar?: components["schemas"]["File"] | null;
1937
+ };
1938
+ /** @description Response after creating new role */
1939
+ NewRoleResponse: {
1940
+ /** @description Id of the role */
1941
+ id: string;
1942
+ /** @description New role */
1943
+ role: components["schemas"]["Role"];
1944
+ };
1945
+ /** @description Information about new role to create */
1946
+ DataCreateRole: {
1947
+ /** @description Role name */
1948
+ name: string;
1949
+ /**
1950
+ * Format: int64
1951
+ * @description Ranking position
1952
+ *
1953
+ * Smaller values take priority.
1954
+ */
1955
+ rank?: number | null;
1956
+ };
1957
+ /** @description New role information */
1958
+ DataEditRole: {
1959
+ /** @description Role name */
1960
+ name?: string | null;
1961
+ /** @description Role colour */
1962
+ colour?: string | null;
1963
+ /** @description Whether this role should be displayed separately */
1964
+ hoist?: boolean | null;
1965
+ /**
1966
+ * Format: int64
1967
+ * @description Ranking position
1968
+ *
1969
+ * Smaller values take priority.
1970
+ */
1971
+ rank?: number | null;
1972
+ /** @description Fields to remove from role object */
1973
+ remove?: components["schemas"]["FieldsRole"][] | null;
1974
+ };
1975
+ /**
1976
+ * @description Optional fields on server object
1977
+ * @enum {string}
1978
+ */
1979
+ FieldsRole: "Colour";
1980
+ /** @description New role permissions */
1981
+ DataSetServerRolePermission: {
1982
+ /** @description Allow / deny values for the role in this server. */
1983
+ permissions: components["schemas"]["Override"];
1984
+ };
1985
+ /** @description Data permissions Value - contains allow */
1986
+ DataPermissionsValue: {
1987
+ /** Format: uint64 */
1988
+ permissions: number;
1989
+ };
1990
+ /** @description Emoji */
1991
+ Emoji: {
1992
+ /** @description Unique Id */
1993
+ _id: string;
1994
+ /** @description What owns this emoji */
1995
+ parent: components["schemas"]["EmojiParent"];
1996
+ /** @description Uploader user id */
1997
+ creator_id: string;
1998
+ /** @description Emoji name */
1999
+ name: string;
2000
+ /** @description Whether the emoji is animated */
2001
+ animated?: boolean;
2002
+ /** @description Whether the emoji is marked as nsfw */
2003
+ nsfw?: boolean;
2004
+ };
2005
+ /** @description Parent Id of the emoji */
2006
+ EmojiParent: {
2007
+ /** @enum {string} */
2008
+ type: "Server";
2009
+ id: string;
2010
+ } | {
2011
+ /** @enum {string} */
2012
+ type: "Detached";
2013
+ };
2014
+ /** @description Public invite response */
2015
+ InviteResponse: {
2016
+ /** @enum {string} */
2017
+ type: "Server";
2018
+ /** @description Invite code */
2019
+ code: string;
2020
+ /** @description Id of the server */
2021
+ server_id: string;
2022
+ /** @description Name of the server */
2023
+ server_name: string;
2024
+ /** @description Attachment for server icon */
2025
+ server_icon?: components["schemas"]["File"] | null;
2026
+ /** @description Attachment for server banner */
2027
+ server_banner?: components["schemas"]["File"] | null;
2028
+ /**
2029
+ * Format: int32
2030
+ * @description Enum of server flags
2031
+ */
2032
+ server_flags?: number | null;
2033
+ /** @description Id of server channel */
2034
+ channel_id: string;
2035
+ /** @description Name of server channel */
2036
+ channel_name: string;
2037
+ /** @description Description of server channel */
2038
+ channel_description?: string | null;
2039
+ /** @description Name of user who created the invite */
2040
+ user_name: string;
2041
+ /** @description Avatar of the user who created the invite */
2042
+ user_avatar?: components["schemas"]["File"] | null;
2043
+ /**
2044
+ * Format: int64
2045
+ * @description Number of members in this server
2046
+ */
2047
+ member_count: number;
2048
+ } | {
2049
+ /** @enum {string} */
2050
+ type: "Group";
2051
+ /** @description Invite code */
2052
+ code: string;
2053
+ /** @description Id of group channel */
2054
+ channel_id: string;
2055
+ /** @description Name of group channel */
2056
+ channel_name: string;
2057
+ /** @description Description of group channel */
2058
+ channel_description?: string | null;
2059
+ /** @description Name of user who created the invite */
2060
+ user_name: string;
2061
+ /** @description Avatar of the user who created the invite */
2062
+ user_avatar?: components["schemas"]["File"] | null;
2063
+ };
2064
+ /** @description Invite join response */
2065
+ InviteJoinResponse: {
2066
+ /** @enum {string} */
2067
+ type: "Server";
2068
+ /** @description Channels in the server */
2069
+ channels: components["schemas"]["Channel"][];
2070
+ /** @description Server we are joining */
2071
+ server: components["schemas"]["Server"];
2072
+ } | {
2073
+ /** @enum {string} */
2074
+ type: "Group";
2075
+ /** @description Group channel we are joining */
2076
+ channel: components["schemas"]["Channel"];
2077
+ /** @description Members of this group */
2078
+ users: components["schemas"]["User"][];
2079
+ };
2080
+ /** @description Create a new emoji */
2081
+ DataCreateEmoji: {
2082
+ /** @description Server name */
2083
+ name: string;
2084
+ /** @description Parent information */
2085
+ parent: components["schemas"]["EmojiParent"];
2086
+ /** @description Whether the emoji is mature */
2087
+ nsfw?: boolean;
2088
+ };
2089
+ /** Report Data */
2090
+ DataReportContent: {
2091
+ /** @description Content being reported */
2092
+ content: components["schemas"]["ReportedContent"];
2093
+ /** @description Additional report description */
2094
+ additional_context?: string;
2095
+ };
2096
+ /** @description The content being reported */
2097
+ ReportedContent: {
2098
+ /** @enum {string} */
2099
+ type: "Message";
2100
+ /** @description ID of the message */
2101
+ id: string;
2102
+ /** @description Reason for reporting message */
2103
+ report_reason: components["schemas"]["ContentReportReason"];
2104
+ } | {
2105
+ /** @enum {string} */
2106
+ type: "Server";
2107
+ /** @description ID of the server */
2108
+ id: string;
2109
+ /** @description Reason for reporting server */
2110
+ report_reason: components["schemas"]["ContentReportReason"];
2111
+ } | {
2112
+ /** @enum {string} */
2113
+ type: "User";
2114
+ /** @description ID of the user */
2115
+ id: string;
2116
+ /** @description Reason for reporting a user */
2117
+ report_reason: components["schemas"]["UserReportReason"];
2118
+ /** @description Message context */
2119
+ message_id?: string | null;
2120
+ };
2121
+ /**
2122
+ * @description Reason for reporting content (message or server)
2123
+ * @enum {string}
2124
+ */
2125
+ ContentReportReason: "NoneSpecified" | "Illegal" | "IllegalGoods" | "IllegalExtortion" | "IllegalPornography" | "IllegalHacking" | "ExtremeViolence" | "PromotesHarm" | "UnsolicitedSpam" | "Raid" | "SpamAbuse" | "ScamsFraud" | "Malware" | "Harassment";
2126
+ /**
2127
+ * @description Reason for reporting a user
2128
+ * @enum {string}
2129
+ */
2130
+ UserReportReason: "NoneSpecified" | "UnsolicitedSpam" | "SpamAbuse" | "InappropriateProfile" | "Impersonation" | "BanEvasion" | "Underage";
2131
+ /** Error */
2132
+ "Authifier Error": {
2133
+ /** @enum {string} */
2134
+ type: "IncorrectData";
2135
+ with: string;
2136
+ } | {
2137
+ /** @enum {string} */
2138
+ type: "DatabaseError";
2139
+ operation: string;
2140
+ with: string;
2141
+ } | {
2142
+ /** @enum {string} */
2143
+ type: "InternalError";
2144
+ } | {
2145
+ /** @enum {string} */
2146
+ type: "OperationFailed";
2147
+ } | {
2148
+ /** @enum {string} */
2149
+ type: "RenderFail";
2150
+ } | {
2151
+ /** @enum {string} */
2152
+ type: "MissingHeaders";
2153
+ } | {
2154
+ /** @enum {string} */
2155
+ type: "CaptchaFailed";
2156
+ } | {
2157
+ /** @enum {string} */
2158
+ type: "BlockedByShield";
2159
+ } | {
2160
+ /** @enum {string} */
2161
+ type: "InvalidSession";
2162
+ } | {
2163
+ /** @enum {string} */
2164
+ type: "UnverifiedAccount";
2165
+ } | {
2166
+ /** @enum {string} */
2167
+ type: "UnknownUser";
2168
+ } | {
2169
+ /** @enum {string} */
2170
+ type: "EmailFailed";
2171
+ } | {
2172
+ /** @enum {string} */
2173
+ type: "InvalidToken";
2174
+ } | {
2175
+ /** @enum {string} */
2176
+ type: "MissingInvite";
2177
+ } | {
2178
+ /** @enum {string} */
2179
+ type: "InvalidInvite";
2180
+ } | {
2181
+ /** @enum {string} */
2182
+ type: "InvalidCredentials";
2183
+ } | {
2184
+ /** @enum {string} */
2185
+ type: "CompromisedPassword";
2186
+ } | {
2187
+ /** @enum {string} */
2188
+ type: "ShortPassword";
2189
+ } | {
2190
+ /** @enum {string} */
2191
+ type: "Blacklisted";
2192
+ } | {
2193
+ /** @enum {string} */
2194
+ type: "LockedOut";
2195
+ } | {
2196
+ /** @enum {string} */
2197
+ type: "TotpAlreadyEnabled";
2198
+ } | {
2199
+ /** @enum {string} */
2200
+ type: "DisallowedMFAMethod";
2201
+ };
2202
+ /** Account Data */
2203
+ DataCreateAccount: {
2204
+ /** @description Valid email address */
2205
+ email: string;
2206
+ /** @description Password */
2207
+ password: string;
2208
+ /** @description Invite code */
2209
+ invite?: string | null;
2210
+ /** @description Captcha verification code */
2211
+ captcha?: string | null;
2212
+ };
2213
+ /** Resend Information */
2214
+ DataResendVerification: {
2215
+ /** @description Email associated with the account */
2216
+ email: string;
2217
+ /** @description Captcha verification code */
2218
+ captcha?: string | null;
2219
+ };
2220
+ /** Account Deletion Token */
2221
+ DataAccountDeletion: {
2222
+ /** @description Deletion token */
2223
+ token: string;
2224
+ };
2225
+ AccountInfo: {
2226
+ _id: string;
2227
+ email: string;
2228
+ };
2229
+ /** Change Data */
2230
+ DataChangePassword: {
2231
+ /** @description New password */
2232
+ password: string;
2233
+ /** @description Current password */
2234
+ current_password: string;
2235
+ };
2236
+ /** Change Data */
2237
+ DataChangeEmail: {
2238
+ /** @description Valid email address */
2239
+ email: string;
2240
+ /** @description Current password */
2241
+ current_password: string;
2242
+ };
2243
+ ResponseVerify: unknown | {
2244
+ /** @description Authorised MFA ticket, can be used to log in */
2245
+ ticket: components["schemas"]["MFATicket"];
2246
+ };
2247
+ /** @description Multi-factor auth ticket */
2248
+ MFATicket: {
2249
+ /** @description Unique Id */
2250
+ _id: string;
2251
+ /** @description Account Id */
2252
+ account_id: string;
2253
+ /** @description Unique Token */
2254
+ token: string;
2255
+ /** @description Whether this ticket has been validated (can be used for account actions) */
2256
+ validated: boolean;
2257
+ /** @description Whether this ticket is authorised (can be used to log a user in) */
2258
+ authorised: boolean;
2259
+ /** @description TOTP code at time of ticket creation */
2260
+ last_totp_code?: string | null;
2261
+ };
2262
+ /** Password Reset */
2263
+ DataPasswordReset: {
2264
+ /** @description Reset token */
2265
+ token: string;
2266
+ /** @description New password */
2267
+ password: string;
2268
+ /** @description Whether to logout all sessions */
2269
+ remove_sessions?: boolean;
2270
+ };
2271
+ /** Reset Information */
2272
+ DataSendPasswordReset: {
2273
+ /** @description Email associated with the account */
2274
+ email: string;
2275
+ /** @description Captcha verification code */
2276
+ captcha?: string | null;
2277
+ };
2278
+ ResponseLogin: {
2279
+ /** @enum {string} */
2280
+ result: "Success";
2281
+ /** @description Unique Id */
2282
+ _id: string;
2283
+ /** @description User Id */
2284
+ user_id: string;
2285
+ /** @description Session token */
2286
+ token: string;
2287
+ /** @description Display name */
2288
+ name: string;
2289
+ /** @description Web Push subscription */
2290
+ subscription?: components["schemas"]["WebPushSubscription"] | null;
2291
+ } | {
2292
+ /** @enum {string} */
2293
+ result: "MFA";
2294
+ ticket: string;
2295
+ allowed_methods: components["schemas"]["MFAMethod"][];
2296
+ } | {
2297
+ /** @enum {string} */
2298
+ result: "Disabled";
2299
+ user_id: string;
2300
+ };
2301
+ /** @description Web Push subscription */
2302
+ WebPushSubscription: {
2303
+ endpoint: string;
2304
+ p256dh: string;
2305
+ auth: string;
2306
+ };
2307
+ /**
2308
+ * @description MFA method
2309
+ * @enum {string}
2310
+ */
2311
+ MFAMethod: "Password" | "Recovery" | "Totp";
2312
+ /** Login Data */
2313
+ DataLogin: {
2314
+ /** @description Email */
2315
+ email: string;
2316
+ /** @description Password */
2317
+ password: string;
2318
+ /** @description Friendly name used for the session */
2319
+ friendly_name?: string | null;
2320
+ } | {
2321
+ /**
2322
+ * @description Unvalidated or authorised MFA ticket
2323
+ *
2324
+ * Used to resolve the correct account
2325
+ */
2326
+ mfa_ticket: string;
2327
+ /**
2328
+ * @description Valid MFA response
2329
+ *
2330
+ * This will take precedence over the `password` field where applicable
2331
+ */
2332
+ mfa_response?: components["schemas"]["MFAResponse"] | null;
2333
+ /** @description Friendly name used for the session */
2334
+ friendly_name?: string | null;
2335
+ };
2336
+ /** @description MFA response */
2337
+ MFAResponse: {
2338
+ password: string;
2339
+ } | {
2340
+ recovery_code: string;
2341
+ } | {
2342
+ totp_code: string;
2343
+ };
2344
+ SessionInfo: {
2345
+ _id: string;
2346
+ name: string;
2347
+ };
2348
+ /** Edit Data */
2349
+ DataEditSession: {
2350
+ /** @description Session friendly name */
2351
+ friendly_name: string;
2352
+ };
2353
+ MultiFactorStatus: {
2354
+ email_otp: boolean;
2355
+ trusted_handover: boolean;
2356
+ email_mfa: boolean;
2357
+ totp_mfa: boolean;
2358
+ security_key_mfa: boolean;
2359
+ recovery_active: boolean;
2360
+ };
2361
+ /** Totp Secret */
2362
+ ResponseTotpSecret: {
2363
+ secret: string;
2364
+ };
2365
+ /** Onboarding Status */
2366
+ DataHello: {
2367
+ /** @description Whether onboarding is required */
2368
+ onboarding: boolean;
2369
+ };
2370
+ /** New User Data */
2371
+ DataOnboard: {
2372
+ /** @description New username which will be used to identify the user on the platform */
2373
+ username: string;
2374
+ };
2375
+ /** @description Options for fetching settings */
2376
+ OptionsFetchSettings: {
2377
+ /** @description Keys to fetch */
2378
+ keys: string[];
2379
+ };
2380
+ /** @description Channel Unread */
2381
+ ChannelUnread: {
2382
+ /** @description Composite key pointing to a user's view of a channel */
2383
+ _id: components["schemas"]["ChannelCompositeKey"];
2384
+ /** @description Id of the last message read in this channel by a user */
2385
+ last_id?: string | null;
2386
+ /** @description Array of message ids that mention the user */
2387
+ mentions?: string[];
2388
+ };
2389
+ /** @description Composite primary key consisting of channel and user id */
2390
+ ChannelCompositeKey: {
2391
+ /** @description Channel Id */
2392
+ channel: string;
2393
+ /** @description User Id */
2394
+ user: string;
2395
+ };
2396
+ };
2397
+ }
2398
+ export interface operations {
2399
+ /** Fetch the server configuration for this Hischool instance. */
2400
+ root_root: {
2401
+ responses: {
2402
+ 200: {
2403
+ content: {
2404
+ "application/json": components["schemas"]["HischoolConfig"];
2405
+ };
2406
+ };
2407
+ /** An error occurred. */
2408
+ default: {
2409
+ content: {
2410
+ "application/json": components["schemas"]["Error"];
2411
+ };
2412
+ };
2413
+ };
2414
+ };
2415
+ /** Retrieve your user information. */
2416
+ fetch_self_fetch: {
2417
+ responses: {
2418
+ 200: {
2419
+ content: {
2420
+ "application/json": components["schemas"]["User"];
2421
+ };
2422
+ };
2423
+ /** An error occurred. */
2424
+ default: {
2425
+ content: {
2426
+ "application/json": components["schemas"]["Error"];
2427
+ };
2428
+ };
2429
+ };
2430
+ };
2431
+ /** Retrieve a user's information. */
2432
+ fetch_user_fetch: {
2433
+ parameters: {
2434
+ path: {
2435
+ target: components["schemas"]["Id"];
2436
+ };
2437
+ };
2438
+ responses: {
2439
+ 200: {
2440
+ content: {
2441
+ "application/json": components["schemas"]["User"];
2442
+ };
2443
+ };
2444
+ /** An error occurred. */
2445
+ default: {
2446
+ content: {
2447
+ "application/json": components["schemas"]["Error"];
2448
+ };
2449
+ };
2450
+ };
2451
+ };
2452
+ /** Edit currently authenticated user. */
2453
+ edit_user_edit: {
2454
+ parameters: {
2455
+ path: {
2456
+ target: components["schemas"]["Id"];
2457
+ };
2458
+ };
2459
+ responses: {
2460
+ 200: {
2461
+ content: {
2462
+ "application/json": components["schemas"]["User"];
2463
+ };
2464
+ };
2465
+ /** An error occurred. */
2466
+ default: {
2467
+ content: {
2468
+ "application/json": components["schemas"]["Error"];
2469
+ };
2470
+ };
2471
+ };
2472
+ requestBody: {
2473
+ content: {
2474
+ "application/json": components["schemas"]["DataEditUser"];
2475
+ };
2476
+ };
2477
+ };
2478
+ /** Retrieve a user's flags. */
2479
+ fetch_user_flags_fetch_user_flags: {
2480
+ parameters: {
2481
+ path: {
2482
+ target: components["schemas"]["Id"];
2483
+ };
2484
+ };
2485
+ responses: {
2486
+ 200: {
2487
+ content: {
2488
+ "application/json": components["schemas"]["FlagResponse"];
2489
+ };
2490
+ };
2491
+ /** An error occurred. */
2492
+ default: {
2493
+ content: {
2494
+ "application/json": components["schemas"]["Error"];
2495
+ };
2496
+ };
2497
+ };
2498
+ };
2499
+ /** Change your username. */
2500
+ change_username_change_username: {
2501
+ responses: {
2502
+ 200: {
2503
+ content: {
2504
+ "application/json": components["schemas"]["User"];
2505
+ };
2506
+ };
2507
+ /** An error occurred. */
2508
+ default: {
2509
+ content: {
2510
+ "application/json": components["schemas"]["Error"];
2511
+ };
2512
+ };
2513
+ };
2514
+ requestBody: {
2515
+ content: {
2516
+ "application/json": components["schemas"]["DataChangeUsername"];
2517
+ };
2518
+ };
2519
+ };
2520
+ /** This returns a default avatar based on the given id. */
2521
+ get_default_avatar_default_avatar: {
2522
+ parameters: {
2523
+ path: {
2524
+ target: string;
2525
+ };
2526
+ };
2527
+ responses: {
2528
+ /** Default Avatar Picture */
2529
+ 200: {
2530
+ content: {
2531
+ "image/png": string;
2532
+ };
2533
+ };
2534
+ };
2535
+ };
2536
+ /**
2537
+ * Retrieve a user's profile data.
2538
+ *
2539
+ * Will fail if you do not have permission to access the other user's profile.
2540
+ */
2541
+ fetch_profile_profile: {
2542
+ parameters: {
2543
+ path: {
2544
+ target: components["schemas"]["Id"];
2545
+ };
2546
+ };
2547
+ responses: {
2548
+ 200: {
2549
+ content: {
2550
+ "application/json": components["schemas"]["UserProfile"];
2551
+ };
2552
+ };
2553
+ /** An error occurred. */
2554
+ default: {
2555
+ content: {
2556
+ "application/json": components["schemas"]["Error"];
2557
+ };
2558
+ };
2559
+ };
2560
+ };
2561
+ /** This fetches your direct messages, including any DM and group DM conversations. */
2562
+ fetch_dms_direct_messages: {
2563
+ responses: {
2564
+ 200: {
2565
+ content: {
2566
+ "application/json": components["schemas"]["Channel"][];
2567
+ };
2568
+ };
2569
+ /** An error occurred. */
2570
+ default: {
2571
+ content: {
2572
+ "application/json": components["schemas"]["Error"];
2573
+ };
2574
+ };
2575
+ };
2576
+ };
2577
+ /**
2578
+ * Open a DM with another user.
2579
+ *
2580
+ * If the target is oneself, a saved messages channel is returned.
2581
+ */
2582
+ open_dm_open_dm: {
2583
+ parameters: {
2584
+ path: {
2585
+ target: components["schemas"]["Id"];
2586
+ };
2587
+ };
2588
+ responses: {
2589
+ 200: {
2590
+ content: {
2591
+ "application/json": components["schemas"]["Channel"];
2592
+ };
2593
+ };
2594
+ /** An error occurred. */
2595
+ default: {
2596
+ content: {
2597
+ "application/json": components["schemas"]["Error"];
2598
+ };
2599
+ };
2600
+ };
2601
+ };
2602
+ /** Retrieve a list of mutual friends and servers with another user. */
2603
+ find_mutual_mutual: {
2604
+ parameters: {
2605
+ path: {
2606
+ target: components["schemas"]["Id"];
2607
+ };
2608
+ };
2609
+ responses: {
2610
+ 200: {
2611
+ content: {
2612
+ "application/json": components["schemas"]["MutualResponse"];
2613
+ };
2614
+ };
2615
+ /** An error occurred. */
2616
+ default: {
2617
+ content: {
2618
+ "application/json": components["schemas"]["Error"];
2619
+ };
2620
+ };
2621
+ };
2622
+ };
2623
+ /** Accept another user's friend request. */
2624
+ add_friend_add: {
2625
+ parameters: {
2626
+ path: {
2627
+ target: components["schemas"]["Id"];
2628
+ };
2629
+ };
2630
+ responses: {
2631
+ 200: {
2632
+ content: {
2633
+ "application/json": components["schemas"]["User"];
2634
+ };
2635
+ };
2636
+ /** An error occurred. */
2637
+ default: {
2638
+ content: {
2639
+ "application/json": components["schemas"]["Error"];
2640
+ };
2641
+ };
2642
+ };
2643
+ };
2644
+ /** Denies another user's friend request or removes an existing friend. */
2645
+ remove_friend_remove: {
2646
+ parameters: {
2647
+ path: {
2648
+ target: components["schemas"]["Id"];
2649
+ };
2650
+ };
2651
+ responses: {
2652
+ 200: {
2653
+ content: {
2654
+ "application/json": components["schemas"]["User"];
2655
+ };
2656
+ };
2657
+ /** An error occurred. */
2658
+ default: {
2659
+ content: {
2660
+ "application/json": components["schemas"]["Error"];
2661
+ };
2662
+ };
2663
+ };
2664
+ };
2665
+ /** Block another user by their id. */
2666
+ block_user_block: {
2667
+ parameters: {
2668
+ path: {
2669
+ target: components["schemas"]["Id"];
2670
+ };
2671
+ };
2672
+ responses: {
2673
+ 200: {
2674
+ content: {
2675
+ "application/json": components["schemas"]["User"];
2676
+ };
2677
+ };
2678
+ /** An error occurred. */
2679
+ default: {
2680
+ content: {
2681
+ "application/json": components["schemas"]["Error"];
2682
+ };
2683
+ };
2684
+ };
2685
+ };
2686
+ /** Unblock another user by their id. */
2687
+ unblock_user_unblock: {
2688
+ parameters: {
2689
+ path: {
2690
+ target: components["schemas"]["Id"];
2691
+ };
2692
+ };
2693
+ responses: {
2694
+ 200: {
2695
+ content: {
2696
+ "application/json": components["schemas"]["User"];
2697
+ };
2698
+ };
2699
+ /** An error occurred. */
2700
+ default: {
2701
+ content: {
2702
+ "application/json": components["schemas"]["Error"];
2703
+ };
2704
+ };
2705
+ };
2706
+ };
2707
+ /** Send a friend request to another user. */
2708
+ send_friend_request_send_friend_request: {
2709
+ responses: {
2710
+ 200: {
2711
+ content: {
2712
+ "application/json": components["schemas"]["User"];
2713
+ };
2714
+ };
2715
+ /** An error occurred. */
2716
+ default: {
2717
+ content: {
2718
+ "application/json": components["schemas"]["Error"];
2719
+ };
2720
+ };
2721
+ };
2722
+ requestBody: {
2723
+ content: {
2724
+ "application/json": components["schemas"]["DataSendFriendRequest"];
2725
+ };
2726
+ };
2727
+ };
2728
+ /** Create a new Hischool bot. */
2729
+ create_create_bot: {
2730
+ responses: {
2731
+ 200: {
2732
+ content: {
2733
+ "application/json": components["schemas"]["BotWithUserResponse"];
2734
+ };
2735
+ };
2736
+ /** An error occurred. */
2737
+ default: {
2738
+ content: {
2739
+ "application/json": components["schemas"]["Error"];
2740
+ };
2741
+ };
2742
+ };
2743
+ requestBody: {
2744
+ content: {
2745
+ "application/json": components["schemas"]["DataCreateBot"];
2746
+ };
2747
+ };
2748
+ };
2749
+ /** Fetch details of a public (or owned) bot by its id. */
2750
+ fetch_public_fetch_public_bot: {
2751
+ parameters: {
2752
+ path: {
2753
+ target: components["schemas"]["Id"];
2754
+ };
2755
+ };
2756
+ responses: {
2757
+ 200: {
2758
+ content: {
2759
+ "application/json": components["schemas"]["PublicBot"];
2760
+ };
2761
+ };
2762
+ /** An error occurred. */
2763
+ default: {
2764
+ content: {
2765
+ "application/json": components["schemas"]["Error"];
2766
+ };
2767
+ };
2768
+ };
2769
+ };
2770
+ /** Invite a bot to a server or group by its id.` */
2771
+ invite_invite_bot: {
2772
+ parameters: {
2773
+ path: {
2774
+ target: components["schemas"]["Id"];
2775
+ };
2776
+ };
2777
+ responses: {
2778
+ /** Success */
2779
+ 204: never;
2780
+ /** An error occurred. */
2781
+ default: {
2782
+ content: {
2783
+ "application/json": components["schemas"]["Error"];
2784
+ };
2785
+ };
2786
+ };
2787
+ requestBody: {
2788
+ content: {
2789
+ "application/json": components["schemas"]["InviteBotDestination"];
2790
+ };
2791
+ };
2792
+ };
2793
+ /** Fetch details of a bot you own by its id. */
2794
+ fetch_fetch_bot: {
2795
+ parameters: {
2796
+ path: {
2797
+ bot: components["schemas"]["Id"];
2798
+ };
2799
+ };
2800
+ responses: {
2801
+ 200: {
2802
+ content: {
2803
+ "application/json": components["schemas"]["FetchBotResponse"];
2804
+ };
2805
+ };
2806
+ /** An error occurred. */
2807
+ default: {
2808
+ content: {
2809
+ "application/json": components["schemas"]["Error"];
2810
+ };
2811
+ };
2812
+ };
2813
+ };
2814
+ /** Fetch all of the bots that you have control over. */
2815
+ fetch_owned_fetch_owned_bots: {
2816
+ responses: {
2817
+ 200: {
2818
+ content: {
2819
+ "application/json": components["schemas"]["OwnedBotsResponse"];
2820
+ };
2821
+ };
2822
+ /** An error occurred. */
2823
+ default: {
2824
+ content: {
2825
+ "application/json": components["schemas"]["Error"];
2826
+ };
2827
+ };
2828
+ };
2829
+ };
2830
+ /** Delete a bot by its id. */
2831
+ delete_delete_bot: {
2832
+ parameters: {
2833
+ path: {
2834
+ target: components["schemas"]["Id"];
2835
+ };
2836
+ };
2837
+ responses: {
2838
+ /** Success */
2839
+ 204: never;
2840
+ /** An error occurred. */
2841
+ default: {
2842
+ content: {
2843
+ "application/json": components["schemas"]["Error"];
2844
+ };
2845
+ };
2846
+ };
2847
+ };
2848
+ /** Edit bot details by its id. */
2849
+ edit_edit_bot: {
2850
+ parameters: {
2851
+ path: {
2852
+ target: components["schemas"]["Id"];
2853
+ };
2854
+ };
2855
+ responses: {
2856
+ 200: {
2857
+ content: {
2858
+ "application/json": components["schemas"]["BotWithUserResponse"];
2859
+ };
2860
+ };
2861
+ /** An error occurred. */
2862
+ default: {
2863
+ content: {
2864
+ "application/json": components["schemas"]["Error"];
2865
+ };
2866
+ };
2867
+ };
2868
+ requestBody: {
2869
+ content: {
2870
+ "application/json": components["schemas"]["DataEditBot"];
2871
+ };
2872
+ };
2873
+ };
2874
+ /** Lets the server and all other clients know that we've seen this message id in this channel. */
2875
+ channel_ack_ack: {
2876
+ parameters: {
2877
+ path: {
2878
+ target: components["schemas"]["Id"];
2879
+ message: components["schemas"]["Id"];
2880
+ };
2881
+ };
2882
+ responses: {
2883
+ /** Success */
2884
+ 204: never;
2885
+ /** An error occurred. */
2886
+ default: {
2887
+ content: {
2888
+ "application/json": components["schemas"]["Error"];
2889
+ };
2890
+ };
2891
+ };
2892
+ };
2893
+ /** Fetch channel by its id. */
2894
+ channel_fetch_fetch: {
2895
+ parameters: {
2896
+ path: {
2897
+ target: components["schemas"]["Id"];
2898
+ };
2899
+ };
2900
+ responses: {
2901
+ 200: {
2902
+ content: {
2903
+ "application/json": components["schemas"]["Channel"];
2904
+ };
2905
+ };
2906
+ /** An error occurred. */
2907
+ default: {
2908
+ content: {
2909
+ "application/json": components["schemas"]["Error"];
2910
+ };
2911
+ };
2912
+ };
2913
+ };
2914
+ /** Deletes a server channel, leaves a group or closes a group. */
2915
+ channel_delete_delete: {
2916
+ parameters: {
2917
+ path: {
2918
+ target: components["schemas"]["Id"];
2919
+ };
2920
+ query: {
2921
+ /** Whether to not send a leave message */
2922
+ leave_silently?: boolean | null;
2923
+ };
2924
+ };
2925
+ responses: {
2926
+ /** Success */
2927
+ 204: never;
2928
+ /** An error occurred. */
2929
+ default: {
2930
+ content: {
2931
+ "application/json": components["schemas"]["Error"];
2932
+ };
2933
+ };
2934
+ };
2935
+ };
2936
+ /** Edit a channel object by its id. */
2937
+ channel_edit_edit: {
2938
+ parameters: {
2939
+ path: {
2940
+ target: components["schemas"]["Id"];
2941
+ };
2942
+ };
2943
+ responses: {
2944
+ 200: {
2945
+ content: {
2946
+ "application/json": components["schemas"]["Channel"];
2947
+ };
2948
+ };
2949
+ /** An error occurred. */
2950
+ default: {
2951
+ content: {
2952
+ "application/json": components["schemas"]["Error"];
2953
+ };
2954
+ };
2955
+ };
2956
+ requestBody: {
2957
+ content: {
2958
+ "application/json": components["schemas"]["DataEditChannel"];
2959
+ };
2960
+ };
2961
+ };
2962
+ /**
2963
+ * Retrieves all users who are part of this group.
2964
+ *
2965
+ * This may not return full user information if users are not friends but have mutual connections.
2966
+ */
2967
+ members_fetch_fetch_members: {
2968
+ parameters: {
2969
+ path: {
2970
+ target: components["schemas"]["Id"];
2971
+ };
2972
+ };
2973
+ responses: {
2974
+ 200: {
2975
+ content: {
2976
+ "application/json": components["schemas"]["User"][];
2977
+ };
2978
+ };
2979
+ /** An error occurred. */
2980
+ default: {
2981
+ content: {
2982
+ "application/json": components["schemas"]["Error"];
2983
+ };
2984
+ };
2985
+ };
2986
+ };
2987
+ /**
2988
+ * Creates an invite to this channel.
2989
+ *
2990
+ * Channel must be a `TextChannel`.
2991
+ */
2992
+ invite_create_create_invite: {
2993
+ parameters: {
2994
+ path: {
2995
+ target: components["schemas"]["Id"];
2996
+ };
2997
+ };
2998
+ responses: {
2999
+ 200: {
3000
+ content: {
3001
+ "application/json": components["schemas"]["Invite"];
3002
+ };
3003
+ };
3004
+ /** An error occurred. */
3005
+ default: {
3006
+ content: {
3007
+ "application/json": components["schemas"]["Error"];
3008
+ };
3009
+ };
3010
+ };
3011
+ };
3012
+ /** Fetch multiple messages. */
3013
+ message_query_query: {
3014
+ parameters: {
3015
+ path: {
3016
+ target: components["schemas"]["Id"];
3017
+ };
3018
+ query: {
3019
+ /**
3020
+ * Maximum number of messages to fetch
3021
+ *
3022
+ * For fetching nearby messages, this is \`(limit + 1)\`.
3023
+ */
3024
+ limit?: number | null;
3025
+ /** Message id before which messages should be fetched */
3026
+ before?: string | null;
3027
+ /** Message id after which messages should be fetched */
3028
+ after?: string | null;
3029
+ /** Message sort direction */
3030
+ sort?: components["schemas"]["MessageSort"] | null;
3031
+ /**
3032
+ * Message id to search around
3033
+ *
3034
+ * Specifying 'nearby' ignores 'before', 'after' and 'sort'. It will also take half of limit rounded as the limits to each side. It also fetches the message ID specified.
3035
+ */
3036
+ nearby?: string | null;
3037
+ /** Whether to include user (and member, if server channel) objects */
3038
+ include_users?: boolean | null;
3039
+ };
3040
+ };
3041
+ responses: {
3042
+ 200: {
3043
+ content: {
3044
+ "application/json": components["schemas"]["BulkMessageResponse"];
3045
+ };
3046
+ };
3047
+ /** An error occurred. */
3048
+ default: {
3049
+ content: {
3050
+ "application/json": components["schemas"]["Error"];
3051
+ };
3052
+ };
3053
+ };
3054
+ };
3055
+ /** Sends a message to the given channel. */
3056
+ message_send_message_send: {
3057
+ parameters: {
3058
+ path: {
3059
+ target: components["schemas"]["Id"];
3060
+ };
3061
+ header: {
3062
+ /** Unique key to prevent duplicate requests */
3063
+ "Idempotency-Key"?: string;
3064
+ };
3065
+ };
3066
+ responses: {
3067
+ 200: {
3068
+ content: {
3069
+ "application/json": components["schemas"]["Message"];
3070
+ };
3071
+ };
3072
+ /** An error occurred. */
3073
+ default: {
3074
+ content: {
3075
+ "application/json": components["schemas"]["Error"];
3076
+ };
3077
+ };
3078
+ };
3079
+ requestBody: {
3080
+ content: {
3081
+ "application/json": components["schemas"]["DataMessageSend"];
3082
+ };
3083
+ };
3084
+ };
3085
+ /** This route searches for messages within the given parameters. */
3086
+ message_search_search: {
3087
+ parameters: {
3088
+ path: {
3089
+ target: components["schemas"]["Id"];
3090
+ };
3091
+ };
3092
+ responses: {
3093
+ 200: {
3094
+ content: {
3095
+ "application/json": components["schemas"]["BulkMessageResponse"];
3096
+ };
3097
+ };
3098
+ /** An error occurred. */
3099
+ default: {
3100
+ content: {
3101
+ "application/json": components["schemas"]["Error"];
3102
+ };
3103
+ };
3104
+ };
3105
+ requestBody: {
3106
+ content: {
3107
+ "application/json": components["schemas"]["DataMessageSearch"];
3108
+ };
3109
+ };
3110
+ };
3111
+ /** Pins a message by its id. */
3112
+ message_pin_message_pin: {
3113
+ parameters: {
3114
+ path: {
3115
+ target: components["schemas"]["Id"];
3116
+ msg: components["schemas"]["Id"];
3117
+ };
3118
+ };
3119
+ responses: {
3120
+ /** Success */
3121
+ 204: never;
3122
+ /** An error occurred. */
3123
+ default: {
3124
+ content: {
3125
+ "application/json": components["schemas"]["Error"];
3126
+ };
3127
+ };
3128
+ };
3129
+ };
3130
+ /** Unpins a message by its id. */
3131
+ message_unpin_message_unpin: {
3132
+ parameters: {
3133
+ path: {
3134
+ target: components["schemas"]["Id"];
3135
+ msg: components["schemas"]["Id"];
3136
+ };
3137
+ };
3138
+ responses: {
3139
+ /** Success */
3140
+ 204: never;
3141
+ /** An error occurred. */
3142
+ default: {
3143
+ content: {
3144
+ "application/json": components["schemas"]["Error"];
3145
+ };
3146
+ };
3147
+ };
3148
+ };
3149
+ /** Retrieves a message by its id. */
3150
+ message_fetch_fetch: {
3151
+ parameters: {
3152
+ path: {
3153
+ target: components["schemas"]["Id"];
3154
+ msg: components["schemas"]["Id"];
3155
+ };
3156
+ };
3157
+ responses: {
3158
+ 200: {
3159
+ content: {
3160
+ "application/json": components["schemas"]["Message"];
3161
+ };
3162
+ };
3163
+ /** An error occurred. */
3164
+ default: {
3165
+ content: {
3166
+ "application/json": components["schemas"]["Error"];
3167
+ };
3168
+ };
3169
+ };
3170
+ };
3171
+ /** Delete a message you've sent or one you have permission to delete. */
3172
+ message_delete_delete: {
3173
+ parameters: {
3174
+ path: {
3175
+ target: components["schemas"]["Id"];
3176
+ msg: components["schemas"]["Id"];
3177
+ };
3178
+ };
3179
+ responses: {
3180
+ /** Success */
3181
+ 204: never;
3182
+ /** An error occurred. */
3183
+ default: {
3184
+ content: {
3185
+ "application/json": components["schemas"]["Error"];
3186
+ };
3187
+ };
3188
+ };
3189
+ };
3190
+ /** Edits a message that you've previously sent. */
3191
+ message_edit_edit: {
3192
+ parameters: {
3193
+ path: {
3194
+ target: components["schemas"]["Id"];
3195
+ msg: components["schemas"]["Id"];
3196
+ };
3197
+ };
3198
+ responses: {
3199
+ 200: {
3200
+ content: {
3201
+ "application/json": components["schemas"]["Message"];
3202
+ };
3203
+ };
3204
+ /** An error occurred. */
3205
+ default: {
3206
+ content: {
3207
+ "application/json": components["schemas"]["Error"];
3208
+ };
3209
+ };
3210
+ };
3211
+ requestBody: {
3212
+ content: {
3213
+ "application/json": components["schemas"]["DataEditMessage"];
3214
+ };
3215
+ };
3216
+ };
3217
+ /**
3218
+ * Delete multiple messages you've sent or one you have permission to delete.
3219
+ *
3220
+ * This will always require `ManageMessages` permission regardless of whether you own the message or not.
3221
+ *
3222
+ * Messages must have been sent within the past 1 week.
3223
+ */
3224
+ message_bulk_delete_bulk_delete_messages: {
3225
+ parameters: {
3226
+ path: {
3227
+ target: components["schemas"]["Id"];
3228
+ };
3229
+ };
3230
+ responses: {
3231
+ /** Success */
3232
+ 204: never;
3233
+ /** An error occurred. */
3234
+ default: {
3235
+ content: {
3236
+ "application/json": components["schemas"]["Error"];
3237
+ };
3238
+ };
3239
+ };
3240
+ requestBody: {
3241
+ content: {
3242
+ "application/json": components["schemas"]["OptionsBulkDelete"];
3243
+ };
3244
+ };
3245
+ };
3246
+ /** Create a new group channel. */
3247
+ group_create_create_group: {
3248
+ responses: {
3249
+ 200: {
3250
+ content: {
3251
+ "application/json": components["schemas"]["Channel"];
3252
+ };
3253
+ };
3254
+ /** An error occurred. */
3255
+ default: {
3256
+ content: {
3257
+ "application/json": components["schemas"]["Error"];
3258
+ };
3259
+ };
3260
+ };
3261
+ requestBody: {
3262
+ content: {
3263
+ "application/json": components["schemas"]["DataCreateGroup"];
3264
+ };
3265
+ };
3266
+ };
3267
+ /** Adds another user to the group. */
3268
+ group_add_member_add_member: {
3269
+ parameters: {
3270
+ path: {
3271
+ group_id: components["schemas"]["Id"];
3272
+ member_id: components["schemas"]["Id"];
3273
+ };
3274
+ };
3275
+ responses: {
3276
+ /** Success */
3277
+ 204: never;
3278
+ /** An error occurred. */
3279
+ default: {
3280
+ content: {
3281
+ "application/json": components["schemas"]["Error"];
3282
+ };
3283
+ };
3284
+ };
3285
+ };
3286
+ /** Removes a user from the group. */
3287
+ group_remove_member_remove_member: {
3288
+ parameters: {
3289
+ path: {
3290
+ target: components["schemas"]["Id"];
3291
+ member: components["schemas"]["Id"];
3292
+ };
3293
+ };
3294
+ responses: {
3295
+ /** Success */
3296
+ 204: never;
3297
+ /** An error occurred. */
3298
+ default: {
3299
+ content: {
3300
+ "application/json": components["schemas"]["Error"];
3301
+ };
3302
+ };
3303
+ };
3304
+ };
3305
+ /** Asks the voice server for a token to join the call. */
3306
+ voice_join_call: {
3307
+ parameters: {
3308
+ path: {
3309
+ target: components["schemas"]["Id"];
3310
+ };
3311
+ };
3312
+ responses: {
3313
+ 200: {
3314
+ content: {
3315
+ "application/json": components["schemas"]["LegacyCreateVoiceUserResponse"];
3316
+ };
3317
+ };
3318
+ /** An error occurred. */
3319
+ default: {
3320
+ content: {
3321
+ "application/json": components["schemas"]["Error"];
3322
+ };
3323
+ };
3324
+ };
3325
+ };
3326
+ /**
3327
+ * Sets permissions for the specified role in this channel.
3328
+ *
3329
+ * Channel must be a `TextChannel` or `VoiceChannel`.
3330
+ */
3331
+ permissions_set_set_role_permissions: {
3332
+ parameters: {
3333
+ path: {
3334
+ target: components["schemas"]["Id"];
3335
+ role_id: string;
3336
+ };
3337
+ };
3338
+ responses: {
3339
+ 200: {
3340
+ content: {
3341
+ "application/json": components["schemas"]["Channel"];
3342
+ };
3343
+ };
3344
+ /** An error occurred. */
3345
+ default: {
3346
+ content: {
3347
+ "application/json": components["schemas"]["Error"];
3348
+ };
3349
+ };
3350
+ };
3351
+ requestBody: {
3352
+ content: {
3353
+ "application/json": components["schemas"]["DataSetRolePermissions"];
3354
+ };
3355
+ };
3356
+ };
3357
+ /** Sets permissions for the default role in this server. */
3358
+ permissions_set_default_set_default_permissions: {
3359
+ parameters: {
3360
+ path: {
3361
+ target: components["schemas"]["Id"];
3362
+ };
3363
+ };
3364
+ responses: {
3365
+ 200: {
3366
+ content: {
3367
+ "application/json": components["schemas"]["Server"];
3368
+ };
3369
+ };
3370
+ /** An error occurred. */
3371
+ default: {
3372
+ content: {
3373
+ "application/json": components["schemas"]["Error"];
3374
+ };
3375
+ };
3376
+ };
3377
+ requestBody: {
3378
+ content: {
3379
+ "application/json": components["schemas"]["DataPermissionsValue"];
3380
+ };
3381
+ };
3382
+ };
3383
+ /** React to a given message. */
3384
+ message_react_react_message: {
3385
+ parameters: {
3386
+ path: {
3387
+ target: components["schemas"]["Id"];
3388
+ msg: components["schemas"]["Id"];
3389
+ emoji: components["schemas"]["Id"];
3390
+ };
3391
+ };
3392
+ responses: {
3393
+ /** Success */
3394
+ 204: never;
3395
+ /** An error occurred. */
3396
+ default: {
3397
+ content: {
3398
+ "application/json": components["schemas"]["Error"];
3399
+ };
3400
+ };
3401
+ };
3402
+ };
3403
+ /**
3404
+ * Remove your own, someone else's or all of a given reaction.
3405
+ *
3406
+ * Requires `ManageMessages` if changing others' reactions.
3407
+ */
3408
+ message_unreact_unreact_message: {
3409
+ parameters: {
3410
+ path: {
3411
+ target: components["schemas"]["Id"];
3412
+ msg: components["schemas"]["Id"];
3413
+ emoji: components["schemas"]["Id"];
3414
+ };
3415
+ query: {
3416
+ /** Remove a specific user's reaction */
3417
+ user_id?: string | null;
3418
+ /** Remove all reactions */
3419
+ remove_all?: boolean | null;
3420
+ };
3421
+ };
3422
+ responses: {
3423
+ /** Success */
3424
+ 204: never;
3425
+ /** An error occurred. */
3426
+ default: {
3427
+ content: {
3428
+ "application/json": components["schemas"]["Error"];
3429
+ };
3430
+ };
3431
+ };
3432
+ };
3433
+ /**
3434
+ * Remove your own, someone else's or all of a given reaction.
3435
+ *
3436
+ * Requires `ManageMessages` permission.
3437
+ */
3438
+ message_clear_reactions_clear_reactions: {
3439
+ parameters: {
3440
+ path: {
3441
+ target: components["schemas"]["Id"];
3442
+ msg: components["schemas"]["Id"];
3443
+ };
3444
+ };
3445
+ responses: {
3446
+ /** Success */
3447
+ 204: never;
3448
+ /** An error occurred. */
3449
+ default: {
3450
+ content: {
3451
+ "application/json": components["schemas"]["Error"];
3452
+ };
3453
+ };
3454
+ };
3455
+ };
3456
+ /** Creates a webhook which 3rd party platforms can use to send messages */
3457
+ webhook_create_create_webhook: {
3458
+ parameters: {
3459
+ path: {
3460
+ target: components["schemas"]["Id"];
3461
+ };
3462
+ };
3463
+ responses: {
3464
+ 200: {
3465
+ content: {
3466
+ "application/json": components["schemas"]["Webhook"];
3467
+ };
3468
+ };
3469
+ /** An error occurred. */
3470
+ default: {
3471
+ content: {
3472
+ "application/json": components["schemas"]["Error"];
3473
+ };
3474
+ };
3475
+ };
3476
+ requestBody: {
3477
+ content: {
3478
+ "application/json": components["schemas"]["CreateWebhookBody"];
3479
+ };
3480
+ };
3481
+ };
3482
+ /** Gets all webhooks inside the channel */
3483
+ webhook_fetch_all_fetch_webhooks: {
3484
+ parameters: {
3485
+ path: {
3486
+ channel_id: components["schemas"]["Id"];
3487
+ };
3488
+ };
3489
+ responses: {
3490
+ 200: {
3491
+ content: {
3492
+ "application/json": components["schemas"]["Webhook"][];
3493
+ };
3494
+ };
3495
+ /** An error occurred. */
3496
+ default: {
3497
+ content: {
3498
+ "application/json": components["schemas"]["Error"];
3499
+ };
3500
+ };
3501
+ };
3502
+ };
3503
+ /** Create a new server. */
3504
+ server_create_create_server: {
3505
+ responses: {
3506
+ 200: {
3507
+ content: {
3508
+ "application/json": components["schemas"]["CreateServerLegacyResponse"];
3509
+ };
3510
+ };
3511
+ /** An error occurred. */
3512
+ default: {
3513
+ content: {
3514
+ "application/json": components["schemas"]["Error"];
3515
+ };
3516
+ };
3517
+ };
3518
+ requestBody: {
3519
+ content: {
3520
+ "application/json": components["schemas"]["DataCreateServer"];
3521
+ };
3522
+ };
3523
+ };
3524
+ /** Fetch a server by its id. */
3525
+ server_fetch_fetch: {
3526
+ parameters: {
3527
+ path: {
3528
+ target: components["schemas"]["Id"];
3529
+ };
3530
+ query: {
3531
+ /** Whether to include channels */
3532
+ include_channels?: boolean | null;
3533
+ };
3534
+ };
3535
+ responses: {
3536
+ 200: {
3537
+ content: {
3538
+ "application/json": components["schemas"]["FetchServerResponse"];
3539
+ };
3540
+ };
3541
+ /** An error occurred. */
3542
+ default: {
3543
+ content: {
3544
+ "application/json": components["schemas"]["Error"];
3545
+ };
3546
+ };
3547
+ };
3548
+ };
3549
+ /** Deletes a server if owner otherwise leaves. */
3550
+ server_delete_delete: {
3551
+ parameters: {
3552
+ path: {
3553
+ target: components["schemas"]["Id"];
3554
+ };
3555
+ query: {
3556
+ /** Whether to not send a leave message */
3557
+ leave_silently?: boolean | null;
3558
+ };
3559
+ };
3560
+ responses: {
3561
+ /** Success */
3562
+ 204: never;
3563
+ /** An error occurred. */
3564
+ default: {
3565
+ content: {
3566
+ "application/json": components["schemas"]["Error"];
3567
+ };
3568
+ };
3569
+ };
3570
+ };
3571
+ /** Edit a server by its id. */
3572
+ server_edit_edit: {
3573
+ parameters: {
3574
+ path: {
3575
+ target: components["schemas"]["Id"];
3576
+ };
3577
+ };
3578
+ responses: {
3579
+ 200: {
3580
+ content: {
3581
+ "application/json": components["schemas"]["Server"];
3582
+ };
3583
+ };
3584
+ /** An error occurred. */
3585
+ default: {
3586
+ content: {
3587
+ "application/json": components["schemas"]["Error"];
3588
+ };
3589
+ };
3590
+ };
3591
+ requestBody: {
3592
+ content: {
3593
+ "application/json": components["schemas"]["DataEditServer"];
3594
+ };
3595
+ };
3596
+ };
3597
+ /** Mark all channels in a server as read. */
3598
+ server_ack_ack: {
3599
+ parameters: {
3600
+ path: {
3601
+ target: components["schemas"]["Id"];
3602
+ };
3603
+ };
3604
+ responses: {
3605
+ /** Success */
3606
+ 204: never;
3607
+ /** An error occurred. */
3608
+ default: {
3609
+ content: {
3610
+ "application/json": components["schemas"]["Error"];
3611
+ };
3612
+ };
3613
+ };
3614
+ };
3615
+ /** Create a new Text or Voice channel. */
3616
+ channel_create_create_server_channel: {
3617
+ parameters: {
3618
+ path: {
3619
+ server: components["schemas"]["Id"];
3620
+ };
3621
+ };
3622
+ responses: {
3623
+ 200: {
3624
+ content: {
3625
+ "application/json": components["schemas"]["Channel"];
3626
+ };
3627
+ };
3628
+ /** An error occurred. */
3629
+ default: {
3630
+ content: {
3631
+ "application/json": components["schemas"]["Error"];
3632
+ };
3633
+ };
3634
+ };
3635
+ requestBody: {
3636
+ content: {
3637
+ "application/json": components["schemas"]["DataCreateServerChannel"];
3638
+ };
3639
+ };
3640
+ };
3641
+ /** Fetch all server members. */
3642
+ member_fetch_all_fetch_all: {
3643
+ parameters: {
3644
+ path: {
3645
+ target: components["schemas"]["Id"];
3646
+ };
3647
+ query: {
3648
+ /** Whether to exclude offline users */
3649
+ exclude_offline?: boolean | null;
3650
+ };
3651
+ };
3652
+ responses: {
3653
+ 200: {
3654
+ content: {
3655
+ "application/json": components["schemas"]["AllMemberResponse"];
3656
+ };
3657
+ };
3658
+ /** An error occurred. */
3659
+ default: {
3660
+ content: {
3661
+ "application/json": components["schemas"]["Error"];
3662
+ };
3663
+ };
3664
+ };
3665
+ };
3666
+ /** Retrieve a member. */
3667
+ member_fetch_fetch: {
3668
+ parameters: {
3669
+ path: {
3670
+ target: components["schemas"]["Id"];
3671
+ member: components["schemas"]["Id"];
3672
+ };
3673
+ query: {
3674
+ roles?: boolean | null;
3675
+ };
3676
+ };
3677
+ responses: {
3678
+ 200: {
3679
+ content: {
3680
+ "application/json": components["schemas"]["MemberResponse"];
3681
+ };
3682
+ };
3683
+ /** An error occurred. */
3684
+ default: {
3685
+ content: {
3686
+ "application/json": components["schemas"]["Error"];
3687
+ };
3688
+ };
3689
+ };
3690
+ };
3691
+ /** Removes a member from the server. */
3692
+ member_remove_kick: {
3693
+ parameters: {
3694
+ path: {
3695
+ target: components["schemas"]["Id"];
3696
+ member: components["schemas"]["Id"];
3697
+ };
3698
+ };
3699
+ responses: {
3700
+ /** Success */
3701
+ 204: never;
3702
+ /** An error occurred. */
3703
+ default: {
3704
+ content: {
3705
+ "application/json": components["schemas"]["Error"];
3706
+ };
3707
+ };
3708
+ };
3709
+ };
3710
+ /** Edit a member by their id. */
3711
+ member_edit_edit: {
3712
+ parameters: {
3713
+ path: {
3714
+ server: components["schemas"]["Id"];
3715
+ target: components["schemas"]["Id"];
3716
+ };
3717
+ };
3718
+ responses: {
3719
+ 200: {
3720
+ content: {
3721
+ "application/json": components["schemas"]["Member"];
3722
+ };
3723
+ };
3724
+ /** An error occurred. */
3725
+ default: {
3726
+ content: {
3727
+ "application/json": components["schemas"]["Error"];
3728
+ };
3729
+ };
3730
+ };
3731
+ requestBody: {
3732
+ content: {
3733
+ "application/json": components["schemas"]["DataMemberEdit"];
3734
+ };
3735
+ };
3736
+ };
3737
+ /** Query members by a given name, this API is not stable and will be removed in the future. */
3738
+ member_experimental_query_member_experimental_query: {
3739
+ parameters: {
3740
+ path: {
3741
+ target: components["schemas"]["Id"];
3742
+ };
3743
+ query: {
3744
+ /** String to search for */
3745
+ query: string;
3746
+ /** Discourage use of this API */
3747
+ experimental_api: boolean;
3748
+ };
3749
+ };
3750
+ responses: {
3751
+ 200: {
3752
+ content: {
3753
+ "application/json": components["schemas"]["MemberQueryResponse"];
3754
+ };
3755
+ };
3756
+ /** An error occurred. */
3757
+ default: {
3758
+ content: {
3759
+ "application/json": components["schemas"]["Error"];
3760
+ };
3761
+ };
3762
+ };
3763
+ };
3764
+ /** Ban a user by their id. */
3765
+ ban_create_ban: {
3766
+ parameters: {
3767
+ path: {
3768
+ server: components["schemas"]["Id"];
3769
+ target: components["schemas"]["Id"];
3770
+ };
3771
+ };
3772
+ responses: {
3773
+ 200: {
3774
+ content: {
3775
+ "application/json": components["schemas"]["ServerBan"];
3776
+ };
3777
+ };
3778
+ /** An error occurred. */
3779
+ default: {
3780
+ content: {
3781
+ "application/json": components["schemas"]["Error"];
3782
+ };
3783
+ };
3784
+ };
3785
+ requestBody: {
3786
+ content: {
3787
+ "application/json": components["schemas"]["DataBanCreate"];
3788
+ };
3789
+ };
3790
+ };
3791
+ /** Remove a user's ban. */
3792
+ ban_remove_unban: {
3793
+ parameters: {
3794
+ path: {
3795
+ server: components["schemas"]["Id"];
3796
+ target: components["schemas"]["Id"];
3797
+ };
3798
+ };
3799
+ responses: {
3800
+ /** Success */
3801
+ 204: never;
3802
+ /** An error occurred. */
3803
+ default: {
3804
+ content: {
3805
+ "application/json": components["schemas"]["Error"];
3806
+ };
3807
+ };
3808
+ };
3809
+ };
3810
+ /** Fetch all bans on a server. */
3811
+ ban_list_list: {
3812
+ parameters: {
3813
+ path: {
3814
+ target: components["schemas"]["Id"];
3815
+ };
3816
+ };
3817
+ responses: {
3818
+ 200: {
3819
+ content: {
3820
+ "application/json": components["schemas"]["BanListResult"];
3821
+ };
3822
+ };
3823
+ /** An error occurred. */
3824
+ default: {
3825
+ content: {
3826
+ "application/json": components["schemas"]["Error"];
3827
+ };
3828
+ };
3829
+ };
3830
+ };
3831
+ /** Fetch all server invites. */
3832
+ invites_fetch_invites: {
3833
+ parameters: {
3834
+ path: {
3835
+ target: components["schemas"]["Id"];
3836
+ };
3837
+ };
3838
+ responses: {
3839
+ 200: {
3840
+ content: {
3841
+ "application/json": components["schemas"]["Invite"][];
3842
+ };
3843
+ };
3844
+ /** An error occurred. */
3845
+ default: {
3846
+ content: {
3847
+ "application/json": components["schemas"]["Error"];
3848
+ };
3849
+ };
3850
+ };
3851
+ };
3852
+ /** Creates a new server role. */
3853
+ roles_create_create: {
3854
+ parameters: {
3855
+ path: {
3856
+ target: components["schemas"]["Id"];
3857
+ };
3858
+ };
3859
+ responses: {
3860
+ 200: {
3861
+ content: {
3862
+ "application/json": components["schemas"]["NewRoleResponse"];
3863
+ };
3864
+ };
3865
+ /** An error occurred. */
3866
+ default: {
3867
+ content: {
3868
+ "application/json": components["schemas"]["Error"];
3869
+ };
3870
+ };
3871
+ };
3872
+ requestBody: {
3873
+ content: {
3874
+ "application/json": components["schemas"]["DataCreateRole"];
3875
+ };
3876
+ };
3877
+ };
3878
+ /** Fetch a role by its id. */
3879
+ roles_fetch_fetch: {
3880
+ parameters: {
3881
+ path: {
3882
+ target: components["schemas"]["Id"];
3883
+ role_id: string;
3884
+ };
3885
+ };
3886
+ responses: {
3887
+ 200: {
3888
+ content: {
3889
+ "application/json": components["schemas"]["Role"];
3890
+ };
3891
+ };
3892
+ /** An error occurred. */
3893
+ default: {
3894
+ content: {
3895
+ "application/json": components["schemas"]["Error"];
3896
+ };
3897
+ };
3898
+ };
3899
+ };
3900
+ /** Delete a server role by its id. */
3901
+ roles_delete_delete: {
3902
+ parameters: {
3903
+ path: {
3904
+ target: components["schemas"]["Id"];
3905
+ role_id: string;
3906
+ };
3907
+ };
3908
+ responses: {
3909
+ /** Success */
3910
+ 204: never;
3911
+ /** An error occurred. */
3912
+ default: {
3913
+ content: {
3914
+ "application/json": components["schemas"]["Error"];
3915
+ };
3916
+ };
3917
+ };
3918
+ };
3919
+ /** Edit a role by its id. */
3920
+ roles_edit_edit: {
3921
+ parameters: {
3922
+ path: {
3923
+ target: components["schemas"]["Id"];
3924
+ role_id: string;
3925
+ };
3926
+ };
3927
+ responses: {
3928
+ 200: {
3929
+ content: {
3930
+ "application/json": components["schemas"]["Role"];
3931
+ };
3932
+ };
3933
+ /** An error occurred. */
3934
+ default: {
3935
+ content: {
3936
+ "application/json": components["schemas"]["Error"];
3937
+ };
3938
+ };
3939
+ };
3940
+ requestBody: {
3941
+ content: {
3942
+ "application/json": components["schemas"]["DataEditRole"];
3943
+ };
3944
+ };
3945
+ };
3946
+ /** Sets permissions for the specified role in the server. */
3947
+ permissions_set_set_role_permission: {
3948
+ parameters: {
3949
+ path: {
3950
+ target: components["schemas"]["Id"];
3951
+ role_id: string;
3952
+ };
3953
+ };
3954
+ responses: {
3955
+ 200: {
3956
+ content: {
3957
+ "application/json": components["schemas"]["Server"];
3958
+ };
3959
+ };
3960
+ /** An error occurred. */
3961
+ default: {
3962
+ content: {
3963
+ "application/json": components["schemas"]["Error"];
3964
+ };
3965
+ };
3966
+ };
3967
+ requestBody: {
3968
+ content: {
3969
+ "application/json": components["schemas"]["DataSetServerRolePermission"];
3970
+ };
3971
+ };
3972
+ };
3973
+ /** Fetch all emoji on a server. */
3974
+ emoji_list_list_emoji: {
3975
+ parameters: {
3976
+ path: {
3977
+ target: components["schemas"]["Id"];
3978
+ };
3979
+ };
3980
+ responses: {
3981
+ 200: {
3982
+ content: {
3983
+ "application/json": components["schemas"]["Emoji"][];
3984
+ };
3985
+ };
3986
+ /** An error occurred. */
3987
+ default: {
3988
+ content: {
3989
+ "application/json": components["schemas"]["Error"];
3990
+ };
3991
+ };
3992
+ };
3993
+ };
3994
+ /** Fetch an invite by its id. */
3995
+ invite_fetch_fetch: {
3996
+ parameters: {
3997
+ path: {
3998
+ target: components["schemas"]["Id"];
3999
+ };
4000
+ };
4001
+ responses: {
4002
+ 200: {
4003
+ content: {
4004
+ "application/json": components["schemas"]["InviteResponse"];
4005
+ };
4006
+ };
4007
+ /** An error occurred. */
4008
+ default: {
4009
+ content: {
4010
+ "application/json": components["schemas"]["Error"];
4011
+ };
4012
+ };
4013
+ };
4014
+ };
4015
+ /** Join an invite by its ID */
4016
+ invite_join_join: {
4017
+ parameters: {
4018
+ path: {
4019
+ target: components["schemas"]["Id"];
4020
+ };
4021
+ };
4022
+ responses: {
4023
+ 200: {
4024
+ content: {
4025
+ "application/json": components["schemas"]["InviteJoinResponse"];
4026
+ };
4027
+ };
4028
+ /** An error occurred. */
4029
+ default: {
4030
+ content: {
4031
+ "application/json": components["schemas"]["Error"];
4032
+ };
4033
+ };
4034
+ };
4035
+ };
4036
+ /** Delete an invite by its id. */
4037
+ invite_delete_delete: {
4038
+ parameters: {
4039
+ path: {
4040
+ target: components["schemas"]["Id"];
4041
+ };
4042
+ };
4043
+ responses: {
4044
+ /** Success */
4045
+ 204: never;
4046
+ /** An error occurred. */
4047
+ default: {
4048
+ content: {
4049
+ "application/json": components["schemas"]["Error"];
4050
+ };
4051
+ };
4052
+ };
4053
+ };
4054
+ /** Create an emoji by its Autumn upload id. */
4055
+ emoji_create_create_emoji: {
4056
+ parameters: {
4057
+ path: {
4058
+ id: string;
4059
+ };
4060
+ };
4061
+ responses: {
4062
+ 200: {
4063
+ content: {
4064
+ "application/json": components["schemas"]["Emoji"];
4065
+ };
4066
+ };
4067
+ /** An error occurred. */
4068
+ default: {
4069
+ content: {
4070
+ "application/json": components["schemas"]["Error"];
4071
+ };
4072
+ };
4073
+ };
4074
+ requestBody: {
4075
+ content: {
4076
+ "application/json": components["schemas"]["DataCreateEmoji"];
4077
+ };
4078
+ };
4079
+ };
4080
+ /** Fetch an emoji by its id. */
4081
+ emoji_fetch_fetch_emoji: {
4082
+ parameters: {
4083
+ path: {
4084
+ emoji_id: components["schemas"]["Id"];
4085
+ };
4086
+ };
4087
+ responses: {
4088
+ 200: {
4089
+ content: {
4090
+ "application/json": components["schemas"]["Emoji"];
4091
+ };
4092
+ };
4093
+ /** An error occurred. */
4094
+ default: {
4095
+ content: {
4096
+ "application/json": components["schemas"]["Error"];
4097
+ };
4098
+ };
4099
+ };
4100
+ };
4101
+ /** Delete an emoji by its id. */
4102
+ emoji_delete_delete_emoji: {
4103
+ parameters: {
4104
+ path: {
4105
+ emoji_id: components["schemas"]["Id"];
4106
+ };
4107
+ };
4108
+ responses: {
4109
+ /** Success */
4110
+ 204: never;
4111
+ /** An error occurred. */
4112
+ default: {
4113
+ content: {
4114
+ "application/json": components["schemas"]["Error"];
4115
+ };
4116
+ };
4117
+ };
4118
+ };
4119
+ /** Report a piece of content to the moderation team. */
4120
+ report_content_report_content: {
4121
+ responses: {
4122
+ 200: unknown;
4123
+ /** An error occurred. */
4124
+ default: {
4125
+ content: {
4126
+ "application/json": components["schemas"]["Error"];
4127
+ };
4128
+ };
4129
+ };
4130
+ requestBody: {
4131
+ content: {
4132
+ "application/json": components["schemas"]["DataReportContent"];
4133
+ };
4134
+ };
4135
+ };
4136
+ /** Create a new account. */
4137
+ create_account_create_account: {
4138
+ responses: {
4139
+ /** Success */
4140
+ 204: never;
4141
+ /** An error occurred. */
4142
+ default: {
4143
+ content: {
4144
+ "application/json": components["schemas"]["Error"];
4145
+ };
4146
+ };
4147
+ };
4148
+ requestBody: {
4149
+ content: {
4150
+ "application/json": components["schemas"]["DataCreateAccount"];
4151
+ };
4152
+ };
4153
+ };
4154
+ /** Resend account creation verification email. */
4155
+ resend_verification_resend_verification: {
4156
+ responses: {
4157
+ /** Success */
4158
+ 204: never;
4159
+ /** An error occurred. */
4160
+ default: {
4161
+ content: {
4162
+ "application/json": components["schemas"]["Error"];
4163
+ };
4164
+ };
4165
+ };
4166
+ requestBody: {
4167
+ content: {
4168
+ "application/json": components["schemas"]["DataResendVerification"];
4169
+ };
4170
+ };
4171
+ };
4172
+ /** Schedule an account for deletion by confirming the received token. */
4173
+ confirm_deletion_confirm_deletion: {
4174
+ responses: {
4175
+ /** Success */
4176
+ 204: never;
4177
+ /** An error occurred. */
4178
+ default: {
4179
+ content: {
4180
+ "application/json": components["schemas"]["Error"];
4181
+ };
4182
+ };
4183
+ };
4184
+ requestBody: {
4185
+ content: {
4186
+ "application/json": components["schemas"]["DataAccountDeletion"];
4187
+ };
4188
+ };
4189
+ };
4190
+ /** Request to have an account deleted. */
4191
+ delete_account_delete_account: {
4192
+ responses: {
4193
+ /** Success */
4194
+ 204: never;
4195
+ /** An error occurred. */
4196
+ default: {
4197
+ content: {
4198
+ "application/json": components["schemas"]["Error"];
4199
+ };
4200
+ };
4201
+ };
4202
+ };
4203
+ /** Fetch account information from the current session. */
4204
+ fetch_account_fetch_account: {
4205
+ responses: {
4206
+ 200: {
4207
+ content: {
4208
+ "application/json": components["schemas"]["AccountInfo"];
4209
+ };
4210
+ };
4211
+ /** An error occurred. */
4212
+ default: {
4213
+ content: {
4214
+ "application/json": components["schemas"]["Error"];
4215
+ };
4216
+ };
4217
+ };
4218
+ };
4219
+ /** Disable an account. */
4220
+ disable_account_disable_account: {
4221
+ responses: {
4222
+ /** Success */
4223
+ 204: never;
4224
+ /** An error occurred. */
4225
+ default: {
4226
+ content: {
4227
+ "application/json": components["schemas"]["Error"];
4228
+ };
4229
+ };
4230
+ };
4231
+ };
4232
+ /** Change the current account password. */
4233
+ change_password_change_password: {
4234
+ responses: {
4235
+ /** Success */
4236
+ 204: never;
4237
+ /** An error occurred. */
4238
+ default: {
4239
+ content: {
4240
+ "application/json": components["schemas"]["Error"];
4241
+ };
4242
+ };
4243
+ };
4244
+ requestBody: {
4245
+ content: {
4246
+ "application/json": components["schemas"]["DataChangePassword"];
4247
+ };
4248
+ };
4249
+ };
4250
+ /** Change the associated account email. */
4251
+ change_email_change_email: {
4252
+ responses: {
4253
+ /** Success */
4254
+ 204: never;
4255
+ /** An error occurred. */
4256
+ default: {
4257
+ content: {
4258
+ "application/json": components["schemas"]["Error"];
4259
+ };
4260
+ };
4261
+ };
4262
+ requestBody: {
4263
+ content: {
4264
+ "application/json": components["schemas"]["DataChangeEmail"];
4265
+ };
4266
+ };
4267
+ };
4268
+ /** Verify an email address. */
4269
+ verify_email_verify_email: {
4270
+ parameters: {
4271
+ path: {
4272
+ code: string;
4273
+ };
4274
+ };
4275
+ responses: {
4276
+ 200: {
4277
+ content: {
4278
+ "application/json": components["schemas"]["ResponseVerify"];
4279
+ };
4280
+ };
4281
+ /** An error occurred. */
4282
+ default: {
4283
+ content: {
4284
+ "application/json": components["schemas"]["Error"];
4285
+ };
4286
+ };
4287
+ };
4288
+ };
4289
+ /** Send an email to reset account password. */
4290
+ send_password_reset_send_password_reset: {
4291
+ responses: {
4292
+ /** Success */
4293
+ 204: never;
4294
+ /** An error occurred. */
4295
+ default: {
4296
+ content: {
4297
+ "application/json": components["schemas"]["Error"];
4298
+ };
4299
+ };
4300
+ };
4301
+ requestBody: {
4302
+ content: {
4303
+ "application/json": components["schemas"]["DataSendPasswordReset"];
4304
+ };
4305
+ };
4306
+ };
4307
+ /** Confirm password reset and change the password. */
4308
+ password_reset_password_reset: {
4309
+ responses: {
4310
+ /** Success */
4311
+ 204: never;
4312
+ /** An error occurred. */
4313
+ default: {
4314
+ content: {
4315
+ "application/json": components["schemas"]["Error"];
4316
+ };
4317
+ };
4318
+ };
4319
+ requestBody: {
4320
+ content: {
4321
+ "application/json": components["schemas"]["DataPasswordReset"];
4322
+ };
4323
+ };
4324
+ };
4325
+ /** Login to an account. */
4326
+ login_login: {
4327
+ responses: {
4328
+ 200: {
4329
+ content: {
4330
+ "application/json": components["schemas"]["ResponseLogin"];
4331
+ };
4332
+ };
4333
+ /** An error occurred. */
4334
+ default: {
4335
+ content: {
4336
+ "application/json": components["schemas"]["Error"];
4337
+ };
4338
+ };
4339
+ };
4340
+ requestBody: {
4341
+ content: {
4342
+ "application/json": components["schemas"]["DataLogin"];
4343
+ };
4344
+ };
4345
+ };
4346
+ /** Delete current session. */
4347
+ logout_logout: {
4348
+ responses: {
4349
+ /** Success */
4350
+ 204: never;
4351
+ /** An error occurred. */
4352
+ default: {
4353
+ content: {
4354
+ "application/json": components["schemas"]["Error"];
4355
+ };
4356
+ };
4357
+ };
4358
+ };
4359
+ /** Fetch all sessions associated with this account. */
4360
+ fetch_all_fetch_all: {
4361
+ responses: {
4362
+ 200: {
4363
+ content: {
4364
+ "application/json": components["schemas"]["SessionInfo"][];
4365
+ };
4366
+ };
4367
+ /** An error occurred. */
4368
+ default: {
4369
+ content: {
4370
+ "application/json": components["schemas"]["Error"];
4371
+ };
4372
+ };
4373
+ };
4374
+ };
4375
+ /** Delete all active sessions, optionally including current one. */
4376
+ revoke_all_revoke_all: {
4377
+ parameters: {
4378
+ query: {
4379
+ revoke_self?: boolean | null;
4380
+ };
4381
+ };
4382
+ responses: {
4383
+ /** Success */
4384
+ 204: never;
4385
+ /** An error occurred. */
4386
+ default: {
4387
+ content: {
4388
+ "application/json": components["schemas"]["Error"];
4389
+ };
4390
+ };
4391
+ };
4392
+ };
4393
+ /** Delete a specific active session. */
4394
+ revoke_revoke: {
4395
+ parameters: {
4396
+ path: {
4397
+ id: string;
4398
+ };
4399
+ };
4400
+ responses: {
4401
+ /** Success */
4402
+ 204: never;
4403
+ /** An error occurred. */
4404
+ default: {
4405
+ content: {
4406
+ "application/json": components["schemas"]["Error"];
4407
+ };
4408
+ };
4409
+ };
4410
+ };
4411
+ /** Edit current session information. */
4412
+ edit_edit: {
4413
+ parameters: {
4414
+ path: {
4415
+ id: string;
4416
+ };
4417
+ };
4418
+ responses: {
4419
+ 200: {
4420
+ content: {
4421
+ "application/json": components["schemas"]["SessionInfo"];
4422
+ };
4423
+ };
4424
+ /** An error occurred. */
4425
+ default: {
4426
+ content: {
4427
+ "application/json": components["schemas"]["Error"];
4428
+ };
4429
+ };
4430
+ };
4431
+ requestBody: {
4432
+ content: {
4433
+ "application/json": components["schemas"]["DataEditSession"];
4434
+ };
4435
+ };
4436
+ };
4437
+ /** Create a new MFA ticket or validate an existing one. */
4438
+ create_ticket_create_ticket: {
4439
+ responses: {
4440
+ 200: {
4441
+ content: {
4442
+ "application/json": components["schemas"]["MFATicket"];
4443
+ };
4444
+ };
4445
+ /** An error occurred. */
4446
+ default: {
4447
+ content: {
4448
+ "application/json": components["schemas"]["Error"];
4449
+ };
4450
+ };
4451
+ };
4452
+ requestBody: {
4453
+ content: {
4454
+ "application/json": components["schemas"]["MFAResponse"];
4455
+ };
4456
+ };
4457
+ };
4458
+ /** Fetch MFA status of an account. */
4459
+ fetch_status_fetch_status: {
4460
+ responses: {
4461
+ 200: {
4462
+ content: {
4463
+ "application/json": components["schemas"]["MultiFactorStatus"];
4464
+ };
4465
+ };
4466
+ /** An error occurred. */
4467
+ default: {
4468
+ content: {
4469
+ "application/json": components["schemas"]["Error"];
4470
+ };
4471
+ };
4472
+ };
4473
+ };
4474
+ /** Fetch recovery codes for an account. */
4475
+ fetch_recovery_fetch_recovery: {
4476
+ responses: {
4477
+ 200: {
4478
+ content: {
4479
+ "application/json": string[];
4480
+ };
4481
+ };
4482
+ /** An error occurred. */
4483
+ default: {
4484
+ content: {
4485
+ "application/json": components["schemas"]["Error"];
4486
+ };
4487
+ };
4488
+ };
4489
+ };
4490
+ /** Re-generate recovery codes for an account. */
4491
+ generate_recovery_generate_recovery: {
4492
+ responses: {
4493
+ 200: {
4494
+ content: {
4495
+ "application/json": string[];
4496
+ };
4497
+ };
4498
+ /** An error occurred. */
4499
+ default: {
4500
+ content: {
4501
+ "application/json": components["schemas"]["Error"];
4502
+ };
4503
+ };
4504
+ };
4505
+ };
4506
+ /** Fetch available MFA methods. */
4507
+ get_mfa_methods_get_mfa_methods: {
4508
+ responses: {
4509
+ 200: {
4510
+ content: {
4511
+ "application/json": components["schemas"]["MFAMethod"][];
4512
+ };
4513
+ };
4514
+ };
4515
+ };
4516
+ /** Generate a new secret for TOTP. */
4517
+ totp_enable_totp_enable: {
4518
+ responses: {
4519
+ /** Success */
4520
+ 204: never;
4521
+ /** An error occurred. */
4522
+ default: {
4523
+ content: {
4524
+ "application/json": components["schemas"]["Error"];
4525
+ };
4526
+ };
4527
+ };
4528
+ requestBody: {
4529
+ content: {
4530
+ "application/json": components["schemas"]["MFAResponse"];
4531
+ };
4532
+ };
4533
+ };
4534
+ /** Generate a new secret for TOTP. */
4535
+ totp_generate_secret_totp_generate_secret: {
4536
+ responses: {
4537
+ 200: {
4538
+ content: {
4539
+ "application/json": components["schemas"]["ResponseTotpSecret"];
4540
+ };
4541
+ };
4542
+ /** An error occurred. */
4543
+ default: {
4544
+ content: {
4545
+ "application/json": components["schemas"]["Error"];
4546
+ };
4547
+ };
4548
+ };
4549
+ };
4550
+ /** Disable TOTP 2FA for an account. */
4551
+ totp_disable_totp_disable: {
4552
+ responses: {
4553
+ /** Success */
4554
+ 204: never;
4555
+ /** An error occurred. */
4556
+ default: {
4557
+ content: {
4558
+ "application/json": components["schemas"]["Error"];
4559
+ };
4560
+ };
4561
+ };
4562
+ };
4563
+ /** This will tell you whether the current account requires onboarding or whether you can continue to send requests as usual. You may skip calling this if you're restoring an existing session. */
4564
+ hello_hello: {
4565
+ responses: {
4566
+ 200: {
4567
+ content: {
4568
+ "application/json": components["schemas"]["DataHello"];
4569
+ };
4570
+ };
4571
+ };
4572
+ };
4573
+ /** This sets a new username, completes onboarding and allows a user to start using Hischool. */
4574
+ complete_complete: {
4575
+ responses: {
4576
+ 200: {
4577
+ content: {
4578
+ "application/json": components["schemas"]["User"];
4579
+ };
4580
+ };
4581
+ /** An error occurred. */
4582
+ default: {
4583
+ content: {
4584
+ "application/json": components["schemas"]["Error"];
4585
+ };
4586
+ };
4587
+ };
4588
+ requestBody: {
4589
+ content: {
4590
+ "application/json": components["schemas"]["DataOnboard"];
4591
+ };
4592
+ };
4593
+ };
4594
+ /**
4595
+ * Create a new Web Push subscription.
4596
+ *
4597
+ * If an existing subscription exists on this session, it will be removed.
4598
+ */
4599
+ subscribe_subscribe: {
4600
+ responses: {
4601
+ /** Success */
4602
+ 204: never;
4603
+ /** An error occurred. */
4604
+ default: {
4605
+ content: {
4606
+ "application/json": components["schemas"]["Error"];
4607
+ };
4608
+ };
4609
+ };
4610
+ requestBody: {
4611
+ content: {
4612
+ "application/json": components["schemas"]["WebPushSubscription"];
4613
+ };
4614
+ };
4615
+ };
4616
+ /** Remove the Web Push subscription associated with the current session. */
4617
+ unsubscribe_unsubscribe: {
4618
+ responses: {
4619
+ /** Success */
4620
+ 204: never;
4621
+ /** An error occurred. */
4622
+ default: {
4623
+ content: {
4624
+ "application/json": components["schemas"]["Error"];
4625
+ };
4626
+ };
4627
+ };
4628
+ };
4629
+ /**
4630
+ * Fetch settings from server filtered by keys.
4631
+ *
4632
+ * This will return an object with the requested keys, each value is a tuple of `(timestamp, value)`, the value is the previously uploaded data.
4633
+ */
4634
+ get_settings_fetch: {
4635
+ responses: {
4636
+ 200: {
4637
+ content: {
4638
+ "application/json": {
4639
+ [key: string]: [number, string];
4640
+ };
4641
+ };
4642
+ };
4643
+ /** An error occurred. */
4644
+ default: {
4645
+ content: {
4646
+ "application/json": components["schemas"]["Error"];
4647
+ };
4648
+ };
4649
+ };
4650
+ requestBody: {
4651
+ content: {
4652
+ "application/json": components["schemas"]["OptionsFetchSettings"];
4653
+ };
4654
+ };
4655
+ };
4656
+ /** Upload data to save to settings. */
4657
+ set_settings_set: {
4658
+ parameters: {
4659
+ query: {
4660
+ /**
4661
+ * Timestamp of settings change.
4662
+ *
4663
+ * Used to avoid feedback loops.
4664
+ */
4665
+ timestamp?: number | null;
4666
+ };
4667
+ };
4668
+ responses: {
4669
+ /** Success */
4670
+ 204: never;
4671
+ /** An error occurred. */
4672
+ default: {
4673
+ content: {
4674
+ "application/json": components["schemas"]["Error"];
4675
+ };
4676
+ };
4677
+ };
4678
+ requestBody: {
4679
+ content: {
4680
+ "application/json": {
4681
+ [key: string]: string;
4682
+ };
4683
+ };
4684
+ };
4685
+ };
4686
+ /** Fetch information about unread state on channels. */
4687
+ get_unreads_unreads: {
4688
+ responses: {
4689
+ 200: {
4690
+ content: {
4691
+ "application/json": components["schemas"]["ChannelUnread"][];
4692
+ };
4693
+ };
4694
+ /** An error occurred. */
4695
+ default: {
4696
+ content: {
4697
+ "application/json": components["schemas"]["Error"];
4698
+ };
4699
+ };
4700
+ };
4701
+ };
4702
+ }
4703
+ export interface external {
4704
+ }
4705
+ //# sourceMappingURL=schema.d.ts.map