disgroove 1.3.1 → 1.3.3-dev.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 (267) hide show
  1. package/README.md +1 -1
  2. package/dist/lib/Client.d.ts +234 -0
  3. package/dist/lib/Client.js +256 -0
  4. package/dist/lib/Client.js.map +1 -0
  5. package/dist/lib/constants.d.ts +1084 -0
  6. package/dist/lib/constants.js +1163 -0
  7. package/dist/lib/constants.js.map +1 -0
  8. package/dist/lib/gateway/Shard.d.ts +25 -0
  9. package/dist/lib/gateway/Shard.js +522 -0
  10. package/dist/lib/gateway/Shard.js.map +1 -0
  11. package/dist/lib/gateway/ShardsManager.d.ts +5 -0
  12. package/dist/lib/gateway/ShardsManager.js +13 -0
  13. package/dist/lib/gateway/ShardsManager.js.map +1 -0
  14. package/dist/lib/gateway/index.d.ts +2 -0
  15. package/dist/lib/gateway/index.js +19 -0
  16. package/dist/lib/gateway/index.js.map +1 -0
  17. package/dist/lib/index.d.ts +7 -0
  18. package/dist/lib/index.js +24 -0
  19. package/dist/lib/index.js.map +1 -0
  20. package/dist/lib/rest/CDN.d.ts +21 -0
  21. package/dist/lib/rest/CDN.js +46 -0
  22. package/dist/lib/rest/CDN.js.map +1 -0
  23. package/dist/lib/rest/Endpoints.d.ts +94 -0
  24. package/dist/lib/rest/Endpoints.js +211 -0
  25. package/dist/lib/rest/Endpoints.js.map +1 -0
  26. package/dist/lib/rest/REST.d.ts +22 -0
  27. package/dist/lib/rest/REST.js +35 -0
  28. package/dist/lib/rest/REST.js.map +1 -0
  29. package/dist/lib/rest/RequestsManager.d.ts +17 -0
  30. package/dist/lib/rest/RequestsManager.js +124 -0
  31. package/dist/lib/rest/RequestsManager.js.map +1 -0
  32. package/dist/lib/rest/index.d.ts +4 -0
  33. package/dist/lib/rest/index.js +34 -0
  34. package/dist/lib/rest/index.js.map +1 -0
  35. package/dist/lib/structures/Application.d.ts +174 -0
  36. package/dist/lib/structures/Application.js +328 -0
  37. package/dist/lib/structures/Application.js.map +1 -0
  38. package/dist/lib/structures/ApplicationCommand.d.ts +45 -0
  39. package/dist/lib/structures/ApplicationCommand.js +127 -0
  40. package/dist/lib/structures/ApplicationCommand.js.map +1 -0
  41. package/dist/lib/structures/AuditLog.d.ts +20 -0
  42. package/dist/lib/structures/AuditLog.js +76 -0
  43. package/dist/lib/structures/AuditLog.js.map +1 -0
  44. package/dist/lib/structures/AutoModerationRule.d.ts +34 -0
  45. package/dist/lib/structures/AutoModerationRule.js +96 -0
  46. package/dist/lib/structures/AutoModerationRule.js.map +1 -0
  47. package/dist/lib/structures/Base.d.ts +17 -0
  48. package/dist/lib/structures/Base.js +31 -0
  49. package/dist/lib/structures/Base.js.map +1 -0
  50. package/dist/lib/structures/Channel.d.ts +253 -0
  51. package/dist/lib/structures/Channel.js +591 -0
  52. package/dist/lib/structures/Channel.js.map +1 -0
  53. package/dist/lib/structures/ClientApplication.d.ts +150 -0
  54. package/dist/lib/structures/ClientApplication.js +241 -0
  55. package/dist/lib/structures/ClientApplication.js.map +1 -0
  56. package/dist/lib/structures/Emoji.d.ts +28 -0
  57. package/dist/lib/structures/Emoji.js +79 -0
  58. package/dist/lib/structures/Emoji.js.map +1 -0
  59. package/dist/lib/structures/Entitlement.d.ts +24 -0
  60. package/dist/lib/structures/Entitlement.js +68 -0
  61. package/dist/lib/structures/Entitlement.js.map +1 -0
  62. package/dist/lib/structures/Guild.d.ts +462 -0
  63. package/dist/lib/structures/Guild.js +1095 -0
  64. package/dist/lib/structures/Guild.js.map +1 -0
  65. package/dist/lib/structures/GuildMember.d.ts +50 -0
  66. package/dist/lib/structures/GuildMember.js +149 -0
  67. package/dist/lib/structures/GuildMember.js.map +1 -0
  68. package/dist/lib/structures/GuildScheduledEvent.d.ts +49 -0
  69. package/dist/lib/structures/GuildScheduledEvent.js +118 -0
  70. package/dist/lib/structures/GuildScheduledEvent.js.map +1 -0
  71. package/dist/lib/structures/GuildTemplate.d.ts +32 -0
  72. package/dist/lib/structures/GuildTemplate.js +76 -0
  73. package/dist/lib/structures/GuildTemplate.js.map +1 -0
  74. package/dist/lib/structures/Integration.d.ts +30 -0
  75. package/dist/lib/structures/Integration.js +102 -0
  76. package/dist/lib/structures/Integration.js.map +1 -0
  77. package/dist/lib/structures/Interaction.d.ts +76 -0
  78. package/dist/lib/structures/Interaction.js +345 -0
  79. package/dist/lib/structures/Interaction.js.map +1 -0
  80. package/dist/lib/structures/Invite.d.ts +28 -0
  81. package/dist/lib/structures/Invite.js +86 -0
  82. package/dist/lib/structures/Invite.js.map +1 -0
  83. package/dist/lib/structures/Message.d.ts +84 -0
  84. package/dist/lib/structures/Message.js +300 -0
  85. package/dist/lib/structures/Message.js.map +1 -0
  86. package/dist/lib/structures/Role.d.ts +37 -0
  87. package/dist/lib/structures/Role.js +90 -0
  88. package/dist/lib/structures/Role.js.map +1 -0
  89. package/dist/lib/structures/SKU.d.ts +23 -0
  90. package/dist/lib/structures/SKU.js +63 -0
  91. package/dist/lib/structures/SKU.js.map +1 -0
  92. package/dist/lib/structures/StageInstance.d.ts +24 -0
  93. package/dist/lib/structures/StageInstance.js +57 -0
  94. package/dist/lib/structures/StageInstance.js.map +1 -0
  95. package/dist/lib/structures/Sticker.d.ts +31 -0
  96. package/dist/lib/structures/Sticker.js +86 -0
  97. package/dist/lib/structures/Sticker.js.map +1 -0
  98. package/dist/lib/structures/Team.d.ts +14 -0
  99. package/dist/lib/structures/Team.js +39 -0
  100. package/dist/lib/structures/Team.js.map +1 -0
  101. package/dist/lib/structures/TestEntitlement.d.ts +23 -0
  102. package/dist/lib/structures/TestEntitlement.js +61 -0
  103. package/dist/lib/structures/TestEntitlement.js.map +1 -0
  104. package/dist/lib/structures/UnavailableGuild.d.ts +11 -0
  105. package/dist/lib/structures/UnavailableGuild.js +25 -0
  106. package/dist/lib/structures/UnavailableGuild.js.map +1 -0
  107. package/dist/lib/structures/User.d.ts +63 -0
  108. package/dist/lib/structures/User.js +177 -0
  109. package/dist/lib/structures/User.js.map +1 -0
  110. package/dist/lib/structures/VoiceState.d.ts +26 -0
  111. package/dist/lib/structures/VoiceState.js +70 -0
  112. package/dist/lib/structures/VoiceState.js.map +1 -0
  113. package/dist/lib/structures/Webhook.d.ts +84 -0
  114. package/dist/lib/structures/Webhook.js +239 -0
  115. package/dist/lib/structures/Webhook.js.map +1 -0
  116. package/dist/lib/structures/index.d.ts +27 -0
  117. package/dist/lib/structures/index.js +44 -0
  118. package/dist/lib/structures/index.js.map +1 -0
  119. package/dist/lib/types/application-command.d.ts +102 -0
  120. package/dist/lib/types/application-command.js +3 -0
  121. package/dist/lib/types/application-command.js.map +1 -0
  122. package/dist/lib/types/application-role-connection-metadata.d.ts +18 -0
  123. package/dist/lib/types/application-role-connection-metadata.js +3 -0
  124. package/dist/lib/types/application-role-connection-metadata.js.map +1 -0
  125. package/dist/lib/types/application.d.ts +66 -0
  126. package/dist/lib/types/application.js +3 -0
  127. package/dist/lib/types/application.js.map +1 -0
  128. package/dist/lib/types/audit-log.d.ts +82 -0
  129. package/dist/lib/types/audit-log.js +3 -0
  130. package/dist/lib/types/audit-log.js.map +1 -0
  131. package/dist/lib/types/auto-moderation.d.ts +65 -0
  132. package/dist/lib/types/auto-moderation.js +3 -0
  133. package/dist/lib/types/auto-moderation.js.map +1 -0
  134. package/dist/lib/types/channel.d.ts +456 -0
  135. package/dist/lib/types/channel.js +3 -0
  136. package/dist/lib/types/channel.js.map +1 -0
  137. package/dist/lib/types/emoji.d.ts +22 -0
  138. package/dist/lib/types/emoji.js +3 -0
  139. package/dist/lib/types/emoji.js.map +1 -0
  140. package/dist/lib/types/entitlements.d.ts +32 -0
  141. package/dist/lib/types/entitlements.js +3 -0
  142. package/dist/lib/types/entitlements.js.map +1 -0
  143. package/dist/lib/types/gateway-events.d.ts +805 -0
  144. package/dist/lib/types/gateway-events.js +3 -0
  145. package/dist/lib/types/gateway-events.js.map +1 -0
  146. package/dist/lib/types/guild-scheduled-event.d.ts +57 -0
  147. package/dist/lib/types/guild-scheduled-event.js +3 -0
  148. package/dist/lib/types/guild-scheduled-event.js.map +1 -0
  149. package/dist/lib/types/guild-template.d.ts +28 -0
  150. package/dist/lib/types/guild-template.js +3 -0
  151. package/dist/lib/types/guild-template.js.map +1 -0
  152. package/dist/lib/types/guild.d.ts +333 -0
  153. package/dist/lib/types/guild.js +3 -0
  154. package/dist/lib/types/guild.js.map +1 -0
  155. package/dist/lib/types/index.d.ts +23 -0
  156. package/dist/lib/types/index.js +40 -0
  157. package/dist/lib/types/index.js.map +1 -0
  158. package/dist/lib/types/interaction.d.ts +170 -0
  159. package/dist/lib/types/interaction.js +3 -0
  160. package/dist/lib/types/interaction.js.map +1 -0
  161. package/dist/lib/types/invite.d.ts +59 -0
  162. package/dist/lib/types/invite.js +3 -0
  163. package/dist/lib/types/invite.js.map +1 -0
  164. package/dist/lib/types/message-components.d.ts +100 -0
  165. package/dist/lib/types/message-components.js +3 -0
  166. package/dist/lib/types/message-components.js.map +1 -0
  167. package/dist/lib/types/role.d.ts +47 -0
  168. package/dist/lib/types/role.js +3 -0
  169. package/dist/lib/types/role.js.map +1 -0
  170. package/dist/lib/types/sku.d.ts +30 -0
  171. package/dist/lib/types/sku.js +3 -0
  172. package/dist/lib/types/sku.js.map +1 -0
  173. package/dist/lib/types/stage-instance.d.ts +20 -0
  174. package/dist/lib/types/stage-instance.js +3 -0
  175. package/dist/lib/types/stage-instance.js.map +1 -0
  176. package/dist/lib/types/sticker.d.ts +61 -0
  177. package/dist/lib/types/sticker.js +3 -0
  178. package/dist/lib/types/sticker.js.map +1 -0
  179. package/dist/lib/types/team.d.ts +30 -0
  180. package/dist/lib/types/team.js +3 -0
  181. package/dist/lib/types/team.js.map +1 -0
  182. package/dist/lib/types/user.d.ts +77 -0
  183. package/dist/lib/types/user.js +3 -0
  184. package/dist/lib/types/user.js.map +1 -0
  185. package/dist/lib/types/voice.d.ts +47 -0
  186. package/dist/lib/types/voice.js +3 -0
  187. package/dist/lib/types/voice.js.map +1 -0
  188. package/dist/lib/types/webhook.d.ts +31 -0
  189. package/dist/lib/types/webhook.js +3 -0
  190. package/dist/lib/types/webhook.js.map +1 -0
  191. package/dist/lib/utils/Util.d.ts +15 -0
  192. package/dist/lib/utils/Util.js +543 -0
  193. package/dist/lib/utils/Util.js.map +1 -0
  194. package/dist/lib/utils/errors.d.ts +12 -0
  195. package/dist/lib/utils/errors.js +25 -0
  196. package/dist/lib/utils/errors.js.map +1 -0
  197. package/dist/lib/utils/index.d.ts +2 -0
  198. package/dist/lib/utils/index.js +19 -0
  199. package/dist/lib/utils/index.js.map +1 -0
  200. package/dist/package.json +1 -1
  201. package/lib/Client.ts +616 -0
  202. package/lib/constants.ts +1173 -0
  203. package/lib/gateway/Shard.ts +704 -0
  204. package/lib/gateway/ShardsManager.ts +11 -0
  205. package/lib/gateway/index.ts +2 -0
  206. package/lib/index.ts +7 -0
  207. package/lib/rest/CDN.ts +56 -0
  208. package/lib/rest/Endpoints.ts +241 -0
  209. package/lib/rest/REST.ts +45 -0
  210. package/lib/rest/RequestsManager.ts +134 -0
  211. package/lib/rest/index.ts +4 -0
  212. package/lib/structures/Application.ts +599 -0
  213. package/lib/structures/ApplicationCommand.ts +187 -0
  214. package/lib/structures/AuditLog.ts +112 -0
  215. package/lib/structures/AutoModerationRule.ts +127 -0
  216. package/lib/structures/Base.ts +39 -0
  217. package/lib/structures/Channel.ts +921 -0
  218. package/lib/structures/ClientApplication.ts +515 -0
  219. package/lib/structures/Emoji.ts +95 -0
  220. package/lib/structures/Entitlement.ts +65 -0
  221. package/lib/structures/Guild.ts +1842 -0
  222. package/lib/structures/GuildMember.ts +193 -0
  223. package/lib/structures/GuildScheduledEvent.ts +164 -0
  224. package/lib/structures/GuildTemplate.ts +103 -0
  225. package/lib/structures/Integration.ts +136 -0
  226. package/lib/structures/Interaction.ts +506 -0
  227. package/lib/structures/Invite.ts +108 -0
  228. package/lib/structures/Message.ts +421 -0
  229. package/lib/structures/Role.ts +116 -0
  230. package/lib/structures/SKU.ts +63 -0
  231. package/lib/structures/StageInstance.ts +74 -0
  232. package/lib/structures/Sticker.ts +100 -0
  233. package/lib/structures/Team.ts +41 -0
  234. package/lib/structures/TestEntitlement.ts +78 -0
  235. package/lib/structures/UnavailableGuild.ts +27 -0
  236. package/lib/structures/User.ts +233 -0
  237. package/lib/structures/VoiceState.ts +72 -0
  238. package/lib/structures/Webhook.ts +341 -0
  239. package/lib/structures/index.ts +27 -0
  240. package/lib/types/application-command.ts +118 -0
  241. package/lib/types/application-role-connection-metadata.ts +23 -0
  242. package/lib/types/application.ts +77 -0
  243. package/lib/types/audit-log.ts +105 -0
  244. package/lib/types/auto-moderation.ts +78 -0
  245. package/lib/types/channel.ts +534 -0
  246. package/lib/types/emoji.ts +24 -0
  247. package/lib/types/entitlements.ts +34 -0
  248. package/lib/types/gateway-events.ts +970 -0
  249. package/lib/types/guild-scheduled-event.ts +67 -0
  250. package/lib/types/guild-template.ts +30 -0
  251. package/lib/types/guild.ts +388 -0
  252. package/lib/types/index.ts +23 -0
  253. package/lib/types/interaction.ts +224 -0
  254. package/lib/types/invite.ts +78 -0
  255. package/lib/types/message-components.ts +127 -0
  256. package/lib/types/role.ts +51 -0
  257. package/lib/types/sku.ts +32 -0
  258. package/lib/types/stage-instance.ts +22 -0
  259. package/lib/types/sticker.ts +67 -0
  260. package/lib/types/team.ts +34 -0
  261. package/lib/types/user.ts +93 -0
  262. package/lib/types/voice.ts +51 -0
  263. package/lib/types/webhook.ts +40 -0
  264. package/lib/utils/Util.ts +600 -0
  265. package/lib/utils/errors.ts +23 -0
  266. package/lib/utils/index.ts +2 -0
  267. package/package.json +1 -1
@@ -0,0 +1,78 @@
1
+ import type {
2
+ KeywordPresetTypes,
3
+ ActionTypes,
4
+ EventTypes,
5
+ TriggerTypes,
6
+ } from "../constants";
7
+
8
+ /** https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-auto-moderation-rule-structure */
9
+ export interface RawAutoModerationRule {
10
+ id: string;
11
+ guild_id: string;
12
+ name: string;
13
+ creator_id: string;
14
+ event_type: EventTypes;
15
+ trigger_type: TriggerTypes;
16
+ trigger_metadata: RawTriggerMetadata;
17
+ actions: Array<RawAutoModerationAction>;
18
+ enabled: boolean;
19
+ exempt_roles: Array<string>;
20
+ exempt_channels: Array<string>;
21
+ }
22
+
23
+ /** https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-rule-object-trigger-metadata */
24
+ export interface RawTriggerMetadata {
25
+ keyword_filter: Array<string>;
26
+ regex_patterns: Array<string>;
27
+ presets: KeywordPresetTypes;
28
+ allow_list: Array<string>;
29
+ mention_total_limit: number;
30
+ mention_raid_protection: boolean;
31
+ }
32
+
33
+ /** https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object-auto-moderation-action-structure */
34
+ export interface RawAutoModerationAction {
35
+ type: ActionTypes;
36
+ metadata: RawActionMetadata;
37
+ }
38
+
39
+ /** https://discord.com/developers/docs/resources/auto-moderation#auto-moderation-action-object-action-metadata */
40
+ export interface RawActionMetadata {
41
+ channel_id: string;
42
+ duration_seconds: number;
43
+ custom_message?: string;
44
+ }
45
+
46
+ export interface JSONAutoModerationRule {
47
+ id: string;
48
+ guildId: string;
49
+ name: string;
50
+ creatorId: string;
51
+ eventType: EventTypes;
52
+ triggerType: TriggerTypes;
53
+ triggerMetadata: JSONTriggerMetadata;
54
+ actions: Array<JSONAutoModerationAction>;
55
+ enabled: boolean;
56
+ exemptRoles: Array<string>;
57
+ exemptChannels: Array<string>;
58
+ }
59
+
60
+ export interface JSONTriggerMetadata {
61
+ keywordFilter: Array<string>;
62
+ regexPatterns: Array<string>;
63
+ presets: KeywordPresetTypes;
64
+ allowList: Array<string>;
65
+ mentionTotalLimit: number;
66
+ mentionRaidProtection: boolean;
67
+ }
68
+
69
+ export interface JSONAutoModerationAction {
70
+ type: ActionTypes;
71
+ metadata: JSONActionMetadata;
72
+ }
73
+
74
+ export interface JSONActionMetadata {
75
+ channelId: string;
76
+ durationSeconds: number;
77
+ customMessage?: string;
78
+ }
@@ -0,0 +1,534 @@
1
+ import type {
2
+ AllowedMentionTypes,
3
+ AttachmentFlags,
4
+ ChannelFlags,
5
+ ChannelTypes,
6
+ ForumLayoutTypes,
7
+ MessageActivityTypes,
8
+ MessageFlags,
9
+ MessageTypes,
10
+ SortOrderTypes,
11
+ VideoQualityModes,
12
+ } from "../constants";
13
+ import type {
14
+ RawApplication,
15
+ RawGuildMember,
16
+ RawUser,
17
+ RawEmoji,
18
+ RawSticker,
19
+ RawStickerItem,
20
+ RawMessageInteraction,
21
+ JSONMessageInteraction,
22
+ JSONStickerItem,
23
+ JSONSticker,
24
+ JSONEmoji,
25
+ JSONUser,
26
+ JSONApplication,
27
+ JSONGuildMember,
28
+ RawActionRow,
29
+ JSONActionRow,
30
+ RawResolvedData,
31
+ JSONResolvedData,
32
+ } from ".";
33
+
34
+ /** https://discord.com/developers/docs/resources/channel#channel-object-channel-structure */
35
+ export interface RawChannel {
36
+ id: string;
37
+ type: ChannelTypes;
38
+ guild_id?: string;
39
+ position?: number;
40
+ permission_overwrites?: Array<RawOverwrite>;
41
+ name?: string | null;
42
+ topic?: string | null;
43
+ nsfw?: boolean;
44
+ last_message_id?: string | null;
45
+ bitrate?: number;
46
+ user_limit?: number;
47
+ rate_limit_per_user?: number;
48
+ recipients?: Array<RawUser>;
49
+ icon?: string | null;
50
+ owner_id?: string;
51
+ application_id?: string;
52
+ managed?: boolean;
53
+ parent_id?: string | null;
54
+ last_pin_timestamp?: string | null;
55
+ rtc_region?: string | null;
56
+ video_quality_mode?: VideoQualityModes;
57
+ message_count?: number;
58
+ member_count?: number;
59
+ thread_metadata?: RawThreadMetadata;
60
+ member?: RawThreadMember;
61
+ default_auto_archive_duration?: number;
62
+ permissions?: string;
63
+ flags?: ChannelFlags;
64
+ total_message_sent?: number;
65
+ available_tags?: Array<RawForumTag>;
66
+ applied_tags?: Array<string>;
67
+ default_reaction_emoji?: RawDefaultReaction | null;
68
+ default_thread_rate_limit_per_user?: number;
69
+ default_sort_order?: SortOrderTypes | null;
70
+ default_forum_layout?: ForumLayoutTypes;
71
+ }
72
+
73
+ /** https://discord.com/developers/docs/resources/channel#message-object-message-structure */
74
+ export interface RawMessage {
75
+ id: string;
76
+ channel_id: string;
77
+ author: RawUser;
78
+ content: string;
79
+ timestamp: string;
80
+ edited_timestamp: string | null;
81
+ tts: boolean;
82
+ mention_everyone: boolean;
83
+ mentions: Array<RawUser>;
84
+ mention_roles: Array<string>;
85
+ mention_channels?: Array<RawChannelMention>;
86
+ attachments: Array<RawAttachment>;
87
+ embeds: Array<RawEmbed>;
88
+ reactions?: Array<RawReaction>;
89
+ nonce?: number | string;
90
+ pinned: boolean;
91
+ webhook_id?: string;
92
+ type: MessageTypes;
93
+ activity?: RawMessageActivity;
94
+ application?: RawApplication;
95
+ application_id?: string;
96
+ message_reference?: RawMessageReference;
97
+ flags?: MessageFlags;
98
+ referenced_message?: RawMessage | null;
99
+ interaction?: RawMessageInteraction;
100
+ thread?: RawChannel;
101
+ components?: Array<RawActionRow>;
102
+ sticker_items?: Array<RawStickerItem>;
103
+ stickers?: Array<RawSticker>;
104
+ position?: number;
105
+ role_subscription_data?: RawRoleSubscriptionData;
106
+ resolved?: RawResolvedData;
107
+ }
108
+
109
+ /** https://discord.com/developers/docs/resources/channel#message-object-message-activity-structure */
110
+ export interface RawMessageActivity {
111
+ type: MessageActivityTypes;
112
+ party_id?: string;
113
+ }
114
+
115
+ /** https://discord.com/developers/docs/resources/channel#message-reference-object-message-reference-structure */
116
+ export interface RawMessageReference {
117
+ message_id?: string;
118
+ channel_id?: string;
119
+ guild_id?: string;
120
+ fail_if_not_exists?: boolean;
121
+ }
122
+
123
+ /** https://discord.com/developers/docs/resources/channel#followed-channel-object-followed-channel-structure */
124
+ export interface RawFollowedChannel {
125
+ channel_id: string;
126
+ webhook_id: string;
127
+ }
128
+
129
+ /** https://discord.com/developers/docs/resources/channel#reaction-object-reaction-structure */
130
+ export interface RawReaction {
131
+ count: number;
132
+ count_details: RawReactionCountDetails;
133
+ me: boolean;
134
+ me_burst: boolean;
135
+ emoji: RawEmoji;
136
+ burst_colors: Array<string>;
137
+ }
138
+
139
+ /** https://discord.com/developers/docs/resources/channel#reaction-count-details-object-reaction-count-details-structure */
140
+ export interface RawReactionCountDetails {
141
+ burst: number;
142
+ normal: number;
143
+ }
144
+
145
+ /** https://discord.com/developers/docs/resources/channel#overwrite-object-overwrite-structure */
146
+ export interface RawOverwrite {
147
+ id: string;
148
+ type: number;
149
+ allow: string;
150
+ deny: string;
151
+ }
152
+
153
+ /** https://discord.com/developers/docs/resources/channel#thread-metadata-object-thread-metadata-structure */
154
+ export interface RawThreadMetadata {
155
+ archived: boolean;
156
+ auto_archive_duration: number;
157
+ archive_timestamp: string;
158
+ locked: boolean;
159
+ invitable?: boolean;
160
+ create_timestamp?: string | null;
161
+ }
162
+
163
+ /** https://discord.com/developers/docs/resources/channel#thread-member-object-thread-member-structure */
164
+ export interface RawThreadMember {
165
+ id?: string;
166
+ user_id?: string;
167
+ join_timestamp: string;
168
+ flags: number;
169
+ member?: RawGuildMember;
170
+ }
171
+
172
+ /** https://discord.com/developers/docs/resources/channel#default-reaction-object-default-reaction-structure */
173
+ export interface RawDefaultReaction {
174
+ emoji_id: string | null;
175
+ emoji_name: string | null;
176
+ }
177
+
178
+ /** https://discord.com/developers/docs/resources/channel#forum-tag-object-forum-tag-structure */
179
+ export interface RawForumTag {
180
+ id: string;
181
+ name: string;
182
+ moderated: boolean;
183
+ emoji_id?: string;
184
+ emoji_name?: string;
185
+ }
186
+
187
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-structure */
188
+ export interface RawEmbed {
189
+ title?: string;
190
+ type?: string;
191
+ description?: string;
192
+ url?: string;
193
+ timestamp?: string;
194
+ color?: number;
195
+ footer?: RawEmbedFooter;
196
+ image?: RawEmbedImage;
197
+ thumbnail?: RawEmbedThumbnail;
198
+ video?: RawEmbedVideo;
199
+ provider?: RawEmbedProvider;
200
+ author?: RawEmbedAuthor;
201
+ fields?: Array<RawEmbedField>;
202
+ }
203
+
204
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-thumbnail-structure */
205
+ export interface RawEmbedThumbnail {
206
+ url: string;
207
+ proxy_url?: string;
208
+ height?: number;
209
+ width?: number;
210
+ }
211
+
212
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-video-structure */
213
+ export interface RawEmbedVideo {
214
+ url?: string;
215
+ proxy_url?: string;
216
+ height?: number;
217
+ width?: number;
218
+ }
219
+
220
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-image-structure */
221
+ export interface RawEmbedImage {
222
+ url: string;
223
+ proxy_url?: string;
224
+ height?: number;
225
+ width?: number;
226
+ }
227
+
228
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-provider-structure */
229
+ export interface RawEmbedProvider {
230
+ name?: string;
231
+ url?: string;
232
+ }
233
+
234
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-author-structure */
235
+ export interface RawEmbedAuthor {
236
+ name: string;
237
+ url?: string;
238
+ icon_url?: string;
239
+ proxy_icon_url?: string;
240
+ }
241
+
242
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-footer-structure */
243
+ export interface RawEmbedFooter {
244
+ text: string;
245
+ icon_url?: string;
246
+ proxy_icon_url?: string;
247
+ }
248
+
249
+ /** https://discord.com/developers/docs/resources/channel#embed-object-embed-field-structure */
250
+ export interface RawEmbedField {
251
+ name: string;
252
+ value: string;
253
+ inline?: boolean;
254
+ }
255
+
256
+ /** https://discord.com/developers/docs/resources/channel#attachment-object-attachment-structure */
257
+ export interface RawAttachment {
258
+ id: string;
259
+ filename: string;
260
+ description?: string;
261
+ content_type?: string;
262
+ size: number;
263
+ url: string;
264
+ proxy_url: string;
265
+ height?: number;
266
+ width?: number;
267
+ ephemeral?: boolean;
268
+ duration_secs?: number;
269
+ waveform?: boolean;
270
+ flags?: AttachmentFlags;
271
+ }
272
+
273
+ /** https://discord.com/developers/docs/resources/channel#channel-mention-object-channel-mention-structure */
274
+ export interface RawChannelMention {
275
+ id: string;
276
+ guild_id: string;
277
+ type: ChannelTypes;
278
+ name: string;
279
+ }
280
+
281
+ /** https://discord.com/developers/docs/resources/channel#allowed-mentions-object-allowed-mentions-structure */
282
+ export interface RawAllowedMentions {
283
+ parse: Array<AllowedMentionTypes>;
284
+ roles: Array<string>;
285
+ users: Array<string>;
286
+ replied_user: boolean;
287
+ }
288
+
289
+ /** https://discord.com/developers/docs/resources/channel#role-subscription-data-object-role-subscription-data-object-structure */
290
+ export interface RawRoleSubscriptionData {
291
+ role_subscription_listing_id: string;
292
+ tier_name: string;
293
+ total_months_subscribed: number;
294
+ is_renewal: boolean;
295
+ }
296
+
297
+ export interface JSONChannel {
298
+ id: string;
299
+ type: ChannelTypes;
300
+ guildId?: string;
301
+ position?: number;
302
+ permissionOverwrites?: Array<JSONOverwrite>;
303
+ name?: string | null;
304
+ topic?: string | null;
305
+ nsfw?: boolean;
306
+ lastMessageId?: string | null;
307
+ bitrate?: number;
308
+ userLimit?: number;
309
+ rateLimitPerUser?: number;
310
+ recipients?: Array<JSONUser>;
311
+ icon?: string | null;
312
+ ownerId?: string;
313
+ applicationId?: string;
314
+ managed?: boolean;
315
+ parentId?: string | null;
316
+ lastPinTimestamp?: string | null;
317
+ rtcRegion?: string | null;
318
+ videoQualityMode?: VideoQualityModes;
319
+ messageCount?: number;
320
+ memberCount?: number;
321
+ threadMetadata?: JSONThreadMetadata;
322
+ member?: JSONThreadMember;
323
+ defaultAutoArchiveDuration?: number;
324
+ permissions?: string;
325
+ flags?: ChannelFlags;
326
+ totalMessageSent?: number;
327
+ availableTags?: Array<JSONForumTag>;
328
+ appliedTags?: Array<string>;
329
+ defaultReactionEmoji?: JSONDefaultReaction | null;
330
+ defaultThreadRateLimitPerUser?: number;
331
+ defaultSortOrder?: SortOrderTypes | null;
332
+ defaultForumLayout?: ForumLayoutTypes;
333
+ }
334
+
335
+ export interface JSONMessage {
336
+ id: string;
337
+ channelId: string;
338
+ author: JSONUser;
339
+ content: string;
340
+ timestamp: string;
341
+ editedTimestamp: string | null;
342
+ tts: boolean;
343
+ mentionEveryone: boolean;
344
+ mentions: Array<JSONUser>;
345
+ mentionRoles: Array<string>;
346
+ mentionChannels?: Array<JSONChannelMention>;
347
+ attachments: Array<JSONAttachment>;
348
+ embeds: Array<JSONEmbed>;
349
+ reactions?: Array<JSONReaction>;
350
+ nonce?: number | string;
351
+ pinned: boolean;
352
+ webhookId?: string;
353
+ type: MessageTypes;
354
+ activity?: JSONMessageActivity;
355
+ application?: JSONApplication;
356
+ applicationId?: string;
357
+ messageReference?: JSONMessageReference;
358
+ flags?: MessageFlags;
359
+ referencedMessage?: JSONMessage | null;
360
+ interaction?: JSONMessageInteraction;
361
+ thread?: JSONChannel;
362
+ components?: Array<JSONActionRow>;
363
+ stickerItems?: Array<JSONStickerItem>;
364
+ stickers?: Array<JSONSticker>;
365
+ position?: number;
366
+ roleSubscriptionData?: JSONRoleSubscriptionData;
367
+ resolved?: JSONResolvedData;
368
+ }
369
+
370
+ export interface JSONMessageActivity {
371
+ type: MessageActivityTypes;
372
+ partyId?: string;
373
+ }
374
+
375
+ export interface JSONMessageReference {
376
+ messageId?: string;
377
+ channelId?: string;
378
+ guildId?: string;
379
+ failIfNotExists?: boolean;
380
+ }
381
+
382
+ export interface JSONFollowedChannel {
383
+ channelId: string;
384
+ webhookId: string;
385
+ }
386
+
387
+ export interface JSONReaction {
388
+ count: number;
389
+ countDetails: JSONReactionCountDetails;
390
+ me: boolean;
391
+ meBurst: boolean;
392
+ emoji: JSONEmoji;
393
+ burstColors: Array<string>;
394
+ }
395
+
396
+ export interface JSONReactionCountDetails {
397
+ burst: number;
398
+ normal: number;
399
+ }
400
+
401
+ export interface JSONOverwrite {
402
+ id: string;
403
+ type: number;
404
+ allow: string;
405
+ deny: string;
406
+ }
407
+
408
+ export interface JSONThreadMetadata {
409
+ archived: boolean;
410
+ autoArchiveDuration: number;
411
+ archiveTimestamp: string;
412
+ locked: boolean;
413
+ invitable?: boolean;
414
+ createTimestamp?: string | null;
415
+ }
416
+
417
+ export interface JSONThreadMember {
418
+ id?: string;
419
+ userId?: string;
420
+ joinTimestamp: string;
421
+ flags: number;
422
+ member?: JSONGuildMember;
423
+ }
424
+
425
+ export interface JSONDefaultReaction {
426
+ emojiId: string | null;
427
+ emojiName: string | null;
428
+ }
429
+
430
+ export interface JSONForumTag {
431
+ id: string;
432
+ name: string;
433
+ moderated: boolean;
434
+ emojiId?: string;
435
+ emojiName?: string;
436
+ }
437
+
438
+ export interface JSONEmbed {
439
+ title?: string;
440
+ type?: string;
441
+ description?: string;
442
+ url?: string;
443
+ timestamp?: string;
444
+ color?: number;
445
+ footer?: JSONEmbedFooter;
446
+ image?: JSONEmbedImage;
447
+ thumbnail?: JSONEmbedThumbnail;
448
+ video?: JSONEmbedVideo;
449
+ provider?: JSONEmbedProvider;
450
+ author?: JSONEmbedAuthor;
451
+ fields?: Array<JSONEmbedField>;
452
+ }
453
+
454
+ export interface JSONEmbedThumbnail {
455
+ url: string;
456
+ proxyURL?: string;
457
+ height?: number;
458
+ width?: number;
459
+ }
460
+
461
+ export interface JSONEmbedVideo {
462
+ url?: string;
463
+ proxyURL?: string;
464
+ height?: number;
465
+ width?: number;
466
+ }
467
+
468
+ export interface JSONEmbedImage {
469
+ url: string;
470
+ proxyURL?: string;
471
+ height?: number;
472
+ width?: number;
473
+ }
474
+
475
+ export interface JSONEmbedProvider {
476
+ name?: string;
477
+ url?: string;
478
+ }
479
+
480
+ export interface JSONEmbedAuthor {
481
+ name: string;
482
+ url?: string;
483
+ iconURL?: string;
484
+ proxyIconURL?: string;
485
+ }
486
+
487
+ export interface JSONEmbedFooter {
488
+ text: string;
489
+ iconURL?: string;
490
+ proxyIconURL?: string;
491
+ }
492
+
493
+ export interface JSONEmbedField {
494
+ name: string;
495
+ value: string;
496
+ inline?: boolean;
497
+ }
498
+
499
+ export interface JSONAttachment {
500
+ id: string;
501
+ filename: string;
502
+ description?: string;
503
+ contentType?: string;
504
+ size: number;
505
+ url: string;
506
+ proxyURL: string;
507
+ height?: number;
508
+ width?: number;
509
+ ephemeral?: boolean;
510
+ durationSecs?: number;
511
+ waveform?: boolean;
512
+ flags?: AttachmentFlags;
513
+ }
514
+
515
+ export interface JSONChannelMention {
516
+ id: string;
517
+ guildId: string;
518
+ type: ChannelTypes;
519
+ name: string;
520
+ }
521
+
522
+ export interface JSONAllowedMentions {
523
+ parse: Array<AllowedMentionTypes>;
524
+ roles: Array<string>;
525
+ users: Array<string>;
526
+ repliedUser: boolean;
527
+ }
528
+
529
+ export interface JSONRoleSubscriptionData {
530
+ roleSubscriptionListingId: string;
531
+ tierName: string;
532
+ totalMonthsSubscribed: number;
533
+ isRenewal: boolean;
534
+ }
@@ -0,0 +1,24 @@
1
+ import type { JSONUser, RawUser } from ".";
2
+
3
+ /** https://discord.com/developers/docs/resources/emoji#emoji-object-emoji-structure */
4
+ export interface RawEmoji {
5
+ id: string | null;
6
+ name: string | null;
7
+ roles?: Array<string>;
8
+ user?: RawUser;
9
+ require_colons?: boolean;
10
+ managed?: boolean;
11
+ animated?: boolean;
12
+ available?: boolean;
13
+ }
14
+
15
+ export interface JSONEmoji {
16
+ id: string | null;
17
+ name: string | null;
18
+ roles?: Array<string>;
19
+ user?: JSONUser;
20
+ requireColons?: boolean;
21
+ managed?: boolean;
22
+ animated?: boolean;
23
+ available?: boolean;
24
+ }
@@ -0,0 +1,34 @@
1
+ import type { EntitlementTypes } from "../constants";
2
+
3
+ /** https://discord.com/developers/docs/monetization/entitlements#entitlement-object-entitlement-structure */
4
+ export interface RawEntitlement {
5
+ id: string;
6
+ sku_id: string;
7
+ application_id: string;
8
+ user_id?: string;
9
+ promotion_id?: string | null; // Undocumented
10
+ type: EntitlementTypes;
11
+ deleted: boolean;
12
+ gift_code_flags?: number; // Undocumented
13
+ consumed?: boolean; // Undocumented
14
+ starts_at?: string;
15
+ ends_at?: string;
16
+ guild_id?: string;
17
+ subscription_id?: string; // Undocumented
18
+ }
19
+
20
+ export interface JSONEntitlement {
21
+ id: string;
22
+ skuId: string;
23
+ applicationId: string;
24
+ userId?: string;
25
+ promotionId?: string | null; // Undocumented
26
+ type: EntitlementTypes;
27
+ deleted: boolean;
28
+ giftCodeFlags?: number; // Undocumented
29
+ consumed?: boolean; // Undocumented
30
+ startsAt?: string;
31
+ endsAt?: string;
32
+ guildId?: string;
33
+ subscriptionId?: string; // Undocumented
34
+ }