Compare commits

...

58 Commits

Author SHA1 Message Date
github-actions[bot]
1572c2d291 chore(release): 0.37.80 🎉 (#961)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-22 15:48:28 +03:00
MateoDeveloper
a36449a028 feat: add support for polls (#925) 2024-04-21 23:48:20 +03:00
renovate[bot]
29d88445e9 chore(deps): lock file maintenance (#960)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 11:08:30 +03:00
renovate[bot]
df3457a520 chore(deps): update dependency eslint-plugin-local to v4.2.2 (#959)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 11:07:08 +03:00
renovate[bot]
e1653f8f3e chore(deps): lock file maintenance (#958)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 08:56:24 +03:00
renovate[bot]
369d7b712f chore(deps): update patch/minor dependencies (#956)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 08:53:04 +03:00
renovate[bot]
df495ecd20 chore(deps): lock file maintenance (#957)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-19 08:52:44 +03:00
renovate[bot]
ee7fc06b75 chore(deps): lock file maintenance (#954)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 10:33:22 +03:00
renovate[bot]
c6899314eb chore(deps): update patch/minor dependencies (#952)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 10:27:34 +03:00
renovate[bot]
547d6d118f chore(deps): update dependency eslint-config-neon to v0.1.62 (#951)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-12 10:27:05 +03:00
renovate[bot]
2831452fbd chore(deps): lock file maintenance (#950)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 15:04:05 +03:00
renovate[bot]
3c00105453 chore(deps): lock file maintenance (#949)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 15:01:37 +03:00
renovate[bot]
781f8f198a chore(deps): update patch/minor dependencies (#948)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-05 15:00:58 +03:00
github-actions[bot]
77f5dde20e chore(release): 0.37.79 🎉 (#947)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-04 15:19:12 +03:00
Dmytro
e2b3eb5654 chore(StageInstancePrivacyLevel): mark public PrivacyLevel as deprecated (#946) 2024-04-03 21:23:26 +03:00
Vlad Frangu
46cc9ae288 chore: reading docs helps 2024-04-03 11:48:36 +03:00
Vlad Frangu
5934e43d01 chore: bite me renovate 2024-04-03 11:44:56 +03:00
renovate[bot]
5ae3514498 chore(deps): lock file maintenance (#944)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-03 11:42:00 +03:00
Vlad Frangu
0322478a21 chore: make renovate run less often 2024-04-03 11:41:41 +03:00
renovate[bot]
33d3806d89 chore(deps): lock file maintenance (#943)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-03 11:39:23 +03:00
renovate[bot]
aa5f15ed7d chore(deps): update dependency @types/node to v20.12.3 (#942)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-03 01:13:16 +03:00
MateoDeveloper
22b5f47787 feat(ConnectionService): add bungie connection (#907) 2024-04-02 21:27:47 +03:00
renovate[bot]
ddf0a7bdba chore(deps): lock file maintenance (#941)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 15:16:07 +03:00
renovate[bot]
e70fa70526 chore(deps): lock file maintenance (#940)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 09:15:53 +03:00
renovate[bot]
90c70c01bd chore(deps): update dependency @typescript-eslint/utils to v7.5.0 (#939)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-02 09:12:37 +03:00
github-actions[bot]
3442d5657a chore(release): 0.37.78 🎉 (#938)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-01 15:20:36 +03:00
renovate[bot]
43803d6c52 chore(deps): lock file maintenance (#937)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 05:53:54 +03:00
renovate[bot]
0c3383558d chore(deps): update dependency @types/node to v20.12.2 (#935)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 05:52:28 +03:00
renovate[bot]
e030fe2ab7 chore(deps): update dependency tsd to ^0.31.0 (#936)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-04-01 05:49:56 +03:00
renovate[bot]
634df000c6 chore(deps): lock file maintenance (#926)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-31 21:28:05 +03:00
Jaw0r3k
495148dc46 feat: bot banners (#906) 2024-03-31 21:24:03 +03:00
codershiba
61ce329f61 feat(Guild): add RESTPostAPIGuildBulkBan result and json body (#910) 2024-03-31 21:18:51 +03:00
codershiba
7dcad582ce feat(Routes): Add guildBulkBan() route (#909) 2024-03-31 21:16:59 +03:00
codershiba
4db44b553d feat(RESTJSONErrorCodes): Add 500_000 (#908) 2024-03-31 21:15:48 +03:00
github-actions[bot]
ccb7ef479c chore(release): 0.37.77 🎉 (#934)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-28 14:20:13 +02:00
renovate[bot]
37b08a293f chore(deps): update dependency eslint-config-neon to v0.1.60 (#932)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-27 10:48:18 +02:00
Vlad Frangu
db89f0ef66 chore: vlad merged too fast, forgot to lint 2024-03-27 10:46:57 +02:00
Dmytro
47c9ad0e70 feat(APIAuditLogChange): add APIAuditLogChangeKeySystemChannelFlags (#933) 2024-03-27 10:34:11 +02:00
dependabot[bot]
eaaa8254b9 chore(deps): bump express from 4.18.1 to 4.19.2 in /website (#931)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-25 23:46:31 +02:00
renovate[bot]
1d5646e5a0 chore(deps): update dependency @typescript-eslint/utils to v7.4.0 (#930)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-25 23:41:00 +02:00
Almeida
b7ae342faa ci: ignore commits by dependabot (#929) 2024-03-25 14:39:11 +02:00
dependabot[bot]
698282f4b0 chore(deps): bump webpack-dev-middleware from 5.3.3 to 5.3.4 in /website (#927)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-23 11:30:47 +02:00
renovate[bot]
19327a5d66 chore(deps): lock file maintenance (#924)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 14:21:07 +02:00
github-actions[bot]
66958cb67e chore(release): 0.37.76 🎉 (#923)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-21 14:18:44 +02:00
renovate[bot]
bd7e1e7b4f chore(deps): lock file maintenance (#922)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 12:51:39 +02:00
renovate[bot]
6ce581c0db chore(deps): lock file maintenance (#918)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-21 12:30:05 +02:00
renovate[bot]
7f22d4da37 chore(deps): update dependency typescript to v5.4.3 (#920)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-20 21:53:55 +02:00
renovate[bot]
d6d2fb69c9 chore(deps): update dependency @types/node to v20.11.30 (#919)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-19 15:05:35 +02:00
renovate[bot]
dfc109f3f1 chore(deps): update patch/minor dependencies (#917)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-19 10:59:04 +02:00
Almeida
1377730766 ci: ignore new releases triggered only by renovate (#916) 2024-03-18 22:52:38 +02:00
renovate[bot]
22e6bafd39 chore(deps): lock file maintenance (#915)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 22:12:47 +02:00
renovate[bot]
5e175e1595 chore(deps): update dependency @typescript-eslint/utils to v7.3.0 (#914)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 22:09:02 +02:00
Vlad Frangu
fcf14c3ea2 chore: make renovate be less spamy 2024-03-18 22:06:09 +02:00
renovate[bot]
8640cdd360 chore(deps): update dependency @types/node to v20.11.29 (#912)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-18 22:03:03 +02:00
github-actions[bot]
1f83534ccb chore(release): 0.37.75 🎉 (#911)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-03-18 14:28:55 +02:00
dependabot[bot]
affc669a73 chore(deps): bump follow-redirects from 1.15.4 to 1.15.6 in /website (#905)
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.4 to 1.15.6.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.4...v1.15.6)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-15 12:55:36 +02:00
renovate[bot]
15fe19b39d chore(deps): update dependency @commitlint/cli to v19.2.0 (#903)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-15 12:55:20 +02:00
renovate[bot]
c83a604076 chore(deps): update dependency @types/node to v20.11.28 (#904)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-03-15 12:52:31 +02:00
76 changed files with 3883 additions and 2171 deletions

View File

@@ -1,3 +1,50 @@
## [0.37.80](https://github.com/discordjs/discord-api-types/compare/0.37.79...0.37.80) (2024-04-22)
### Features
* add support for polls ([#925](https://github.com/discordjs/discord-api-types/issues/925)) ([a36449a](https://github.com/discordjs/discord-api-types/commit/a36449a0283b733c59f5fdc0d6c3f2f786f0514d))
## [0.37.79](https://github.com/discordjs/discord-api-types/compare/0.37.78...0.37.79) (2024-04-04)
### Features
* **ConnectionService:** add bungie connection ([#907](https://github.com/discordjs/discord-api-types/issues/907)) ([22b5f47](https://github.com/discordjs/discord-api-types/commit/22b5f4778778baec7f414c4b253e96b0949de948))
## [0.37.78](https://github.com/discordjs/discord-api-types/compare/0.37.77...0.37.78) (2024-04-01)
### Features
* bot banners ([#906](https://github.com/discordjs/discord-api-types/issues/906)) ([495148d](https://github.com/discordjs/discord-api-types/commit/495148dc466fcc3cd47ff62377369a97a9cec13d))
* **Guild:** add `RESTPostAPIGuildBulkBan` result and json body ([#910](https://github.com/discordjs/discord-api-types/issues/910)) ([61ce329](https://github.com/discordjs/discord-api-types/commit/61ce329f614d5bc923c3ab4d2b318aa2e66c767b))
* **RESTJSONErrorCodes:** Add `500_000` ([#908](https://github.com/discordjs/discord-api-types/issues/908)) ([4db44b5](https://github.com/discordjs/discord-api-types/commit/4db44b553d7164415b9f20468716beb5223fcec0))
* **Routes:** Add `guildBulkBan()` route ([#909](https://github.com/discordjs/discord-api-types/issues/909)) ([7dcad58](https://github.com/discordjs/discord-api-types/commit/7dcad582ce2fa16ac7bde35f5b158648c2c7c9bf))
## [0.37.77](https://github.com/discordjs/discord-api-types/compare/0.37.76...0.37.77) (2024-03-28)
### Features
* **APIAuditLogChange:** add `APIAuditLogChangeKeySystemChannelFlags` ([#933](https://github.com/discordjs/discord-api-types/issues/933)) ([47c9ad0](https://github.com/discordjs/discord-api-types/commit/47c9ad0e7043c098d103107e95f8a97e67ad3eb4))
## [0.37.76](https://github.com/discordjs/discord-api-types/compare/0.37.75...0.37.76) (2024-03-21)
## [0.37.75](https://github.com/discordjs/discord-api-types/compare/0.37.74...0.37.75) (2024-03-18)
## [0.37.74](https://github.com/discordjs/discord-api-types/compare/0.37.73...0.37.74) (2024-03-14)

View File

@@ -1,3 +1,50 @@
## [0.37.80](https://github.com/discordjs/discord-api-types/compare/0.37.79...0.37.80) (2024-04-22)
### Features
* add support for polls ([#925](https://github.com/discordjs/discord-api-types/issues/925)) ([a36449a](https://github.com/discordjs/discord-api-types/commit/a36449a0283b733c59f5fdc0d6c3f2f786f0514d))
## [0.37.79](https://github.com/discordjs/discord-api-types/compare/0.37.78...0.37.79) (2024-04-04)
### Features
* **ConnectionService:** add bungie connection ([#907](https://github.com/discordjs/discord-api-types/issues/907)) ([22b5f47](https://github.com/discordjs/discord-api-types/commit/22b5f4778778baec7f414c4b253e96b0949de948))
## [0.37.78](https://github.com/discordjs/discord-api-types/compare/0.37.77...0.37.78) (2024-04-01)
### Features
* bot banners ([#906](https://github.com/discordjs/discord-api-types/issues/906)) ([495148d](https://github.com/discordjs/discord-api-types/commit/495148dc466fcc3cd47ff62377369a97a9cec13d))
* **Guild:** add `RESTPostAPIGuildBulkBan` result and json body ([#910](https://github.com/discordjs/discord-api-types/issues/910)) ([61ce329](https://github.com/discordjs/discord-api-types/commit/61ce329f614d5bc923c3ab4d2b318aa2e66c767b))
* **RESTJSONErrorCodes:** Add `500_000` ([#908](https://github.com/discordjs/discord-api-types/issues/908)) ([4db44b5](https://github.com/discordjs/discord-api-types/commit/4db44b553d7164415b9f20468716beb5223fcec0))
* **Routes:** Add `guildBulkBan()` route ([#909](https://github.com/discordjs/discord-api-types/issues/909)) ([7dcad58](https://github.com/discordjs/discord-api-types/commit/7dcad582ce2fa16ac7bde35f5b158648c2c7c9bf))
## [0.37.77](https://github.com/discordjs/discord-api-types/compare/0.37.76...0.37.77) (2024-03-28)
### Features
* **APIAuditLogChange:** add `APIAuditLogChangeKeySystemChannelFlags` ([#933](https://github.com/discordjs/discord-api-types/issues/933)) ([47c9ad0](https://github.com/discordjs/discord-api-types/commit/47c9ad0e7043c098d103107e95f8a97e67ad3eb4))
## [0.37.76](https://github.com/discordjs/discord-api-types/compare/0.37.75...0.37.76) (2024-03-21)
## [0.37.75](https://github.com/discordjs/discord-api-types/compare/0.37.74...0.37.75) (2024-03-18)
## [0.37.74](https://github.com/discordjs/discord-api-types/compare/0.37.73...0.37.74) (2024-03-14)

View File

@@ -203,6 +203,8 @@ export enum GatewayIntentBits {
GuildScheduledEvents = 1 << 16,
AutoModerationConfiguration = 1 << 20,
AutoModerationExecution = 1 << 21,
GuildMessagePolls = 1 << 24,
DirectMessagePolls = 1 << 25,
}
/**
@@ -260,6 +262,8 @@ export enum GatewayDispatchEvents {
VoiceServerUpdate = 'VOICE_SERVER_UPDATE',
VoiceStateUpdate = 'VOICE_STATE_UPDATE',
WebhooksUpdate = 'WEBHOOKS_UPDATE',
MessagePollVoteAdd = 'MESSAGE_POLL_VOTE_ADD',
MessagePollVoteRemove = 'MESSAGE_POLL_VOTE_REMOVE',
GuildScheduledEventCreate = 'GUILD_SCHEDULED_EVENT_CREATE',
GuildScheduledEventUpdate = 'GUILD_SCHEDULED_EVENT_UPDATE',
GuildScheduledEventDelete = 'GUILD_SCHEDULED_EVENT_DELETE',
@@ -328,6 +332,8 @@ export type GatewayDispatchPayload =
| GatewayMessageCreateDispatch
| GatewayMessageDeleteBulkDispatch
| GatewayMessageDeleteDispatch
| GatewayMessagePollVoteAddDispatch
| GatewayMessagePollVoteRemoveDispatch
| GatewayMessageReactionAddDispatch
| GatewayMessageReactionRemoveAllDispatch
| GatewayMessageReactionRemoveDispatch
@@ -1813,6 +1819,45 @@ export interface GatewayGuildAuditLogEntryCreateDispatchData extends APIAuditLog
guild_id: Snowflake;
}
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-add
*/
export type GatewayMessagePollVoteAddDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteAdd,
GatewayMessagePollVoteDispatchData
>;
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-remove
*/
export type GatewayMessagePollVoteRemoveDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteRemove,
GatewayMessagePollVoteDispatchData
>;
export interface GatewayMessagePollVoteDispatchData {
/**
* ID of the user
*/
user_id: Snowflake;
/**
* ID of the channel
*/
channel_id: Snowflake;
/**
* ID of the message
*/
message_id: Snowflake;
/**
* ID of the guild
*/
guild_id?: Snowflake;
/**
* ID of the answer
*/
answer_id: number;
}
// #endregion Dispatch Payloads
// #region Sendable Payloads

View File

@@ -202,6 +202,8 @@ export enum GatewayIntentBits {
GuildScheduledEvents = 1 << 16,
AutoModerationConfiguration = 1 << 20,
AutoModerationExecution = 1 << 21,
GuildMessagePolls = 1 << 24,
DirectMessagePolls = 1 << 25,
}
/**
@@ -259,6 +261,8 @@ export enum GatewayDispatchEvents {
VoiceServerUpdate = 'VOICE_SERVER_UPDATE',
VoiceStateUpdate = 'VOICE_STATE_UPDATE',
WebhooksUpdate = 'WEBHOOKS_UPDATE',
MessagePollVoteAdd = 'MESSAGE_POLL_VOTE_ADD',
MessagePollVoteRemove = 'MESSAGE_POLL_VOTE_REMOVE',
GuildScheduledEventCreate = 'GUILD_SCHEDULED_EVENT_CREATE',
GuildScheduledEventUpdate = 'GUILD_SCHEDULED_EVENT_UPDATE',
GuildScheduledEventDelete = 'GUILD_SCHEDULED_EVENT_DELETE',
@@ -327,6 +331,8 @@ export type GatewayDispatchPayload =
| GatewayMessageCreateDispatch
| GatewayMessageDeleteBulkDispatch
| GatewayMessageDeleteDispatch
| GatewayMessagePollVoteAddDispatch
| GatewayMessagePollVoteRemoveDispatch
| GatewayMessageReactionAddDispatch
| GatewayMessageReactionRemoveAllDispatch
| GatewayMessageReactionRemoveDispatch
@@ -1812,6 +1818,45 @@ export interface GatewayGuildAuditLogEntryCreateDispatchData extends APIAuditLog
guild_id: Snowflake;
}
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-add
*/
export type GatewayMessagePollVoteAddDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteAdd,
GatewayMessagePollVoteDispatchData
>;
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-remove
*/
export type GatewayMessagePollVoteRemoveDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteRemove,
GatewayMessagePollVoteDispatchData
>;
export interface GatewayMessagePollVoteDispatchData {
/**
* ID of the user
*/
user_id: Snowflake;
/**
* ID of the channel
*/
channel_id: Snowflake;
/**
* ID of the message
*/
message_id: Snowflake;
/**
* ID of the guild
*/
guild_id?: Snowflake;
/**
* ID of the answer
*/
answer_id: number;
}
// #endregion Dispatch Payloads
// #region Sendable Payloads

View File

@@ -276,6 +276,12 @@ export const PermissionFlagsBits = {
* Applies to channel types: Text, Voice, Stage
*/
SendVoiceMessages: 1n << 46n,
/**
* Allows sending polls
*
* Applies to channel types: Text, Voice, Stage
*/
SendPolls: 1n << 49n,
} as const;
/**

View File

@@ -17,6 +17,7 @@ import type {
GuildDefaultMessageNotifications,
GuildExplicitContentFilter,
GuildMFALevel,
GuildSystemChannelFlags,
GuildVerificationLevel,
IntegrationExpireBehavior,
} from './guild.ts';
@@ -398,6 +399,7 @@ export type APIAuditLogChange =
| APIAuditLogChangeKeyRulesChannelId
| APIAuditLogChangeKeySplashHash
| APIAuditLogChangeKeyStatus
| APIAuditLogChangeKeySystemChannelFlags
| APIAuditLogChangeKeySystemChannelId
| APIAuditLogChangeKeyTags
| APIAuditLogChangeKeyTemporary
@@ -543,6 +545,14 @@ export type APIAuditLogChangeKeyWidgetEnabled = AuditLogChangeData<'widget_enabl
*/
export type APIAuditLogChangeKeyWidgetChannelId = AuditLogChangeData<'widget_channel_id', Snowflake>;
/**
* Returned when a guild's system_channel_flags is changed
*/
export type APIAuditLogChangeKeySystemChannelFlags = AuditLogChangeData<
'system_channel_flags',
GuildSystemChannelFlags
>;
/**
* Returned when a guild's system_channel_id is changed
*/

View File

@@ -8,6 +8,7 @@ import type { APIPartialEmoji } from './emoji.ts';
import type { APIGuildMember } from './guild.ts';
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions.ts';
import type { APIRole } from './permissions.ts';
import type { APIPoll } from './poll.ts';
import type { APISticker, APIStickerItem } from './sticker.ts';
import type { APIUser } from './user.ts';
@@ -715,6 +716,17 @@ export interface APIMessage {
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
*/
resolved?: APIInteractionDataResolved;
/**
* A poll!
*
* The `MESSAGE_CONTENT` privileged gateway intent is required for verified applications to receive a non-empty value from this field
*
* In the Discord Developers Portal, you need to enable the toggle of this intent of your application in **Bot > Privileged Gateway Intents**.
* You also need to specify the intent bit value (`1 << 15`) if you are connecting to the gateway
*
* See https://support-dev.discord.com/hc/articles/4404772028055
*/
poll?: APIPoll;
}
/**

View File

@@ -10,6 +10,7 @@ export * from './guildScheduledEvent.ts';
export * from './interactions.ts';
export * from './invite.ts';
export * from './oauth2.ts';
export * from './poll.ts';
export * from './permissions.ts';
export * from './stageInstance.ts';
export * from './sticker.ts';

107
deno/payloads/v10/poll.ts Normal file
View File

@@ -0,0 +1,107 @@
/**
* Types extracted from https://discord.com/developers/docs/resources/poll
*/
import type { APIPartialEmoji } from './emoji.ts';
/**
* https://discord.com/developers/docs/resources/poll#poll-object-poll-object-structure
*/
export interface APIPoll {
/**
* The question of the poll
*/
question: APIPollMedia;
/**
* Each of the answers available in the poll, up to 10
*/
answers: APIPollAnswer[];
/**
* The time when the poll ends (IS08601 timestamp)
*/
expiry: string;
/**
* Whether a user can select multiple answers
*/
allow_multiselect: boolean;
/**
* The layout type of the poll
*/
layout_type: PollLayoutType;
/**
* The results of the poll
*/
results?: APIPollResults;
}
/**
* https://discord.com/developers/docs/resources/poll#layout-type
*/
export enum PollLayoutType {
/**
* The, uhm, default layout type
*/
Default = 1,
}
/**
* https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
*/
export interface APIPollMedia {
/**
* The text of the field
*
* The maximum length is `300` for the question, and `55` for any answer
*/
text?: string;
/**
* The emoji of the field
*/
emoji?: APIPartialEmoji;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
*/
export interface APIPollAnswer {
/**
* The ID of the answer. Starts at `1` for the first answer and goes up sequentially
*/
answer_id: number;
/**
* The data of the answer
*/
media: APIPollMedia;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
*/
export interface APIPollResults {
/**
* Whether the votes have been precisely counted
*/
is_finalized: boolean;
/**
* The counts for each answer
*/
answer_counts: APIPollAnswerCount[];
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-answer-count-object-structure
*/
export interface APIPollAnswerCount {
/**
* The `answer_id`
*/
id: number;
/**
* The number of votes for this answer
*/
count: number;
/**
* Whether the current user voted for this answer
*/
me_voted: boolean;
}

View File

@@ -45,6 +45,8 @@ export interface APIStageInstance {
export enum StageInstancePrivacyLevel {
/**
* The stage instance is visible publicly, such as on stage discovery
*
* @deprecated
*/
Public = 1,
/**

View File

@@ -266,6 +266,7 @@ export interface APIConnection {
export enum ConnectionService {
BattleNet = 'battlenet',
BungieNet = 'bungie',
eBay = 'ebay',
EpicGames = 'epicgames',
Facebook = 'facebook',

View File

@@ -17,6 +17,7 @@ import type {
GuildDefaultMessageNotifications,
GuildExplicitContentFilter,
GuildMFALevel,
GuildSystemChannelFlags,
GuildVerificationLevel,
IntegrationExpireBehavior,
} from './guild.ts';
@@ -398,6 +399,7 @@ export type APIAuditLogChange =
| APIAuditLogChangeKeyRulesChannelId
| APIAuditLogChangeKeySplashHash
| APIAuditLogChangeKeyStatus
| APIAuditLogChangeKeySystemChannelFlags
| APIAuditLogChangeKeySystemChannelId
| APIAuditLogChangeKeyTags
| APIAuditLogChangeKeyTemporary
@@ -543,6 +545,14 @@ export type APIAuditLogChangeKeyWidgetEnabled = AuditLogChangeData<'widget_enabl
*/
export type APIAuditLogChangeKeyWidgetChannelId = AuditLogChangeData<'widget_channel_id', Snowflake>;
/**
* Returned when a guild's system_channel_flags is changed
*/
export type APIAuditLogChangeKeySystemChannelFlags = AuditLogChangeData<
'system_channel_flags',
GuildSystemChannelFlags
>;
/**
* Returned when a guild's system_channel_id is changed
*/

View File

@@ -8,6 +8,7 @@ import type { APIPartialEmoji } from './emoji.ts';
import type { APIGuildMember } from './guild.ts';
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions.ts';
import type { APIRole } from './permissions.ts';
import type { APIPoll } from './poll.ts';
import type { APISticker, APIStickerItem } from './sticker.ts';
import type { APIUser } from './user.ts';
@@ -702,6 +703,17 @@ export interface APIMessage {
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
*/
resolved?: APIInteractionDataResolved;
/**
* A poll!
*
* The `MESSAGE_CONTENT` privileged gateway intent is required for verified applications to receive a non-empty value from this field
*
* In the Discord Developers Portal, you need to enable the toggle of this intent of your application in **Bot > Privileged Gateway Intents**.
* You also need to specify the intent bit value (`1 << 15`) if you are connecting to the gateway
*
* See https://support-dev.discord.com/hc/articles/4404772028055
*/
poll?: APIPoll;
}
/**

View File

@@ -10,6 +10,7 @@ export * from './guildScheduledEvent.ts';
export * from './interactions.ts';
export * from './invite.ts';
export * from './oauth2.ts';
export * from './poll.ts';
export * from './permissions.ts';
export * from './stageInstance.ts';
export * from './sticker.ts';

107
deno/payloads/v9/poll.ts Normal file
View File

@@ -0,0 +1,107 @@
/**
* Types extracted from https://discord.com/developers/docs/resources/poll
*/
import type { APIPartialEmoji } from './emoji.ts';
/**
* https://discord.com/developers/docs/resources/poll#poll-object-poll-object-structure
*/
export interface APIPoll {
/**
* The question of the poll
*/
question: APIPollMedia;
/**
* Each of the answers available in the poll, up to 10
*/
answers: APIPollAnswer[];
/**
* The time when the poll ends (IS08601 timestamp)
*/
expiry: string;
/**
* Whether a user can select multiple answers
*/
allow_multiselect: boolean;
/**
* The layout type of the poll
*/
layout_type: PollLayoutType;
/**
* The results of the poll
*/
results?: APIPollResults;
}
/**
* https://discord.com/developers/docs/resources/poll#layout-type
*/
export enum PollLayoutType {
/**
* The, uhm, default layout type
*/
Default = 1,
}
/**
* https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
*/
export interface APIPollMedia {
/**
* The text of the field
*
* The maximum length is `300` for the question, and `55` for any answer
*/
text?: string;
/**
* The emoji of the field
*/
emoji?: APIPartialEmoji;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
*/
export interface APIPollAnswer {
/**
* The ID of the answer. Starts at `1` for the first answer and goes up sequentially
*/
answer_id: number;
/**
* The data of the answer
*/
media: APIPollMedia;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
*/
export interface APIPollResults {
/**
* Whether the votes have been precisely counted
*/
is_finalized: boolean;
/**
* The counts for each answer
*/
answer_counts: APIPollAnswerCount[];
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-answer-count-object-structure
*/
export interface APIPollAnswerCount {
/**
* The `answer_id`
*/
id: number;
/**
* The number of votes for this answer
*/
count: number;
/**
* Whether the current user voted for this answer
*/
me_voted: boolean;
}

View File

@@ -266,6 +266,7 @@ export interface APIConnection {
export enum ConnectionService {
BattleNet = 'battlenet',
BungieNet = 'bungie',
eBay = 'ebay',
EpicGames = 'epicgames',
Facebook = 'facebook',

View File

@@ -293,6 +293,16 @@ export enum RESTJSONErrorCodes {
CannotEnableOnboardingRequirementsAreNotMet = 350_000,
CannotUpdateOnboardingWhileBelowRequirements,
FailedToBanUsers = 500_000,
PollVotingBlocked = 520_000,
PollExpired,
InvalidChannelTypeForPollCreation,
CannotEditAPollMessage,
CannotUseAnEmojiIncludedWithThePoll,
CannotExpireANonPollMessage = 520_006,
}
/**

View File

@@ -26,6 +26,7 @@ import type {
ChannelFlags,
} from '../../payloads/v10/mod.ts';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals.ts';
import type { RESTAPIPollCreate } from './poll.ts';
export interface APIChannelPatchOverwrite extends RESTPutAPIChannelPermissionJSONBody {
id: Snowflake;
@@ -325,6 +326,10 @@ export interface RESTPostAPIChannelMessageJSONBody {
* If another message was created by the same author with the same nonce, that message will be returned and no new message will be created.
*/
enforce_nonce?: boolean | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -604,6 +604,34 @@ export type RESTPutAPIGuildBanResult = never;
*/
export type RESTDeleteAPIGuildBanResult = never;
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanJSONBody {
/**
* List of user ids to ban (max 200)
*/
user_ids: Snowflake[];
/**
* Number of seconds to delete messages for, between 0 and 604800 (7 days)
*/
delete_message_seconds?: number | undefined;
}
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanResult {
/**
* List of user ids, that were successfully banned
*/
banned_users: Snowflake[];
/**
* List of user ids, that were not banned
*/
failed_users: Snowflake[];
}
/**
* https://discord.com/developers/docs/resources/guild#get-guild-roles
*/

View File

@@ -12,6 +12,7 @@ export * from './guildScheduledEvent.ts';
export * from './interactions.ts';
export * from './invite.ts';
export * from './oauth2.ts';
export * from './poll.ts';
export * from './stageInstance.ts';
export * from './sticker.ts';
export * from './template.ts';
@@ -461,6 +462,22 @@ export const Routes = {
return `/guilds/${guildId}/templates/${code}` as const;
},
/**
* Route for:
* - GET `/channels/{channel.id}/polls/{message.id}/answers/{answer_id}`
*/
pollAnswerVoters(channelId: Snowflake, messageId: Snowflake, answerId: number) {
return `/channels/${channelId}/polls/${messageId}/answers/${answerId}` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/polls/{message.id}/expire`
*/
expirePoll(channelId: Snowflake, messageId: Snowflake) {
return `/channels/${channelId}/polls/${messageId}/expire` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/threads`
@@ -910,6 +927,7 @@ export const Routes = {
currentApplication() {
return '/applications/@me' as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/entitlements`
@@ -918,6 +936,7 @@ export const Routes = {
entitlements(applicationId: Snowflake) {
return `/applications/${applicationId}/entitlements` as const;
},
/**
* Route for:
* - DELETE `/applications/{application.id}/entitlements/{entitlement.id}`
@@ -925,6 +944,7 @@ export const Routes = {
entitlement(applicationId: Snowflake, entitlementId: Snowflake) {
return `/applications/${applicationId}/entitlements/${entitlementId}` as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/skus`
@@ -932,6 +952,14 @@ export const Routes = {
skus(applicationId: Snowflake) {
return `/applications/${applicationId}/skus` as const;
},
/**
* Route for:
* - POST `/guilds/{guild.id}/bulk-ban`
*/
guildBulkBan(guildId: Snowflake) {
return `/guilds/${guildId}/bulk-ban` as const;
},
};
export const StickerPackApplicationId = '710982414301790216';

47
deno/rest/v10/poll.ts Normal file
View File

@@ -0,0 +1,47 @@
import type { Snowflake } from '../../globals.ts';
import type { APIMessage, APIPoll, APIPollAnswer, APIUser } from '../../v10.ts';
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersQuery {
/**
* Get users after this user ID
*/
after?: Snowflake;
/**
* Max number of users to return (1-100)
*
* @default 25
*/
limit?: number;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-create-request-object-poll-create-request-object-structure
*/
export interface RESTAPIPollCreate extends Omit<APIPoll, 'answers' | 'expiry' | 'results'> {
/**
* Number of hours the poll should be open for, up to 7 days
*/
duration: number;
/**
* Each of the answers available in the poll, up to 10
*/
answers: Omit<APIPollAnswer, 'answer_id'>[];
}
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersResult {
/**
* Users who voted for this answer
*/
users: APIUser[];
}
/**
* https://discord.com/developers/docs/resources/poll#expire-poll
*/
export type RESTPostAPIPollExpireResult = APIMessage;

View File

@@ -35,6 +35,10 @@ export interface RESTPatchAPICurrentUserJSONBody {
* If passed, modifies the user's avatar
*/
avatar?: string | null | undefined;
/**
* If passed, modifies the user's banner
*/
banner?: string | null | undefined;
}
/**

View File

@@ -10,6 +10,7 @@ import type {
} from '../../payloads/v10/mod.ts';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals.ts';
import type { RESTAPIAttachment } from './channel.ts';
import type { RESTAPIPollCreate } from './poll.ts';
/**
* https://discord.com/developers/docs/resources/webhook#create-webhook
*/
@@ -154,6 +155,10 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
* Array of tag ids to apply to the thread
*/
applied_tags?: Snowflake[] | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -26,6 +26,7 @@ import type {
ChannelFlags,
} from '../../payloads/v9/mod.ts';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals.ts';
import type { RESTAPIPollCreate } from './poll.ts';
export interface APIChannelPatchOverwrite extends RESTPutAPIChannelPermissionJSONBody {
id: Snowflake;
@@ -333,6 +334,10 @@ export interface RESTPostAPIChannelMessageJSONBody {
* If another message was created by the same author with the same nonce, that message will be returned and no new message will be created.
*/
enforce_nonce?: boolean | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -610,6 +610,34 @@ export type RESTPutAPIGuildBanResult = never;
*/
export type RESTDeleteAPIGuildBanResult = never;
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanJSONBody {
/**
* List of user ids to ban (max 200)
*/
user_ids: Snowflake[];
/**
* Number of seconds to delete messages for, between 0 and 604800 (7 days)
*/
delete_message_seconds?: number | undefined;
}
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanResult {
/**
* List of user ids, that were successfully banned
*/
banned_users: Snowflake[];
/**
* List of user ids, that were not banned
*/
failed_users: Snowflake[];
}
/**
* https://discord.com/developers/docs/resources/guild#get-guild-roles
*/

View File

@@ -12,6 +12,7 @@ export * from './guildScheduledEvent.ts';
export * from './interactions.ts';
export * from './invite.ts';
export * from './oauth2.ts';
export * from './poll.ts';
export * from './stageInstance.ts';
export * from './sticker.ts';
export * from './template.ts';
@@ -461,6 +462,22 @@ export const Routes = {
return `/guilds/${guildId}/templates/${code}` as const;
},
/**
* Route for:
* - GET `/channels/{channel.id}/polls/{message.id}/answers/{answer_id}`
*/
pollAnswerVoters(channelId: Snowflake, messageId: Snowflake, answerId: number) {
return `/channels/${channelId}/polls/${messageId}/answers/${answerId}` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/polls/{message.id}/expire`
*/
expirePoll(channelId: Snowflake, messageId: Snowflake) {
return `/channels/${channelId}/polls/${messageId}/expire` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/threads`
@@ -919,6 +936,7 @@ export const Routes = {
currentApplication() {
return '/applications/@me' as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/entitlements`
@@ -927,6 +945,7 @@ export const Routes = {
entitlements(applicationId: Snowflake) {
return `/applications/${applicationId}/entitlements` as const;
},
/**
* Route for:
* - DELETE `/applications/{application.id}/entitlements/{entitlement.id}`
@@ -934,6 +953,7 @@ export const Routes = {
entitlement(applicationId: Snowflake, entitlementId: Snowflake) {
return `/applications/${applicationId}/entitlements/${entitlementId}` as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/skus`
@@ -941,6 +961,14 @@ export const Routes = {
skus(applicationId: Snowflake) {
return `/applications/${applicationId}/skus` as const;
},
/**
* Route for:
* - POST `/guilds/{guild.id}/bulk-ban`
*/
guildBulkBan(guildId: Snowflake) {
return `/guilds/${guildId}/bulk-ban` as const;
},
};
export const StickerPackApplicationId = '710982414301790216';

47
deno/rest/v9/poll.ts Normal file
View File

@@ -0,0 +1,47 @@
import type { Snowflake } from '../../globals.ts';
import type { APIMessage, APIPoll, APIPollAnswer, APIUser } from '../../v9.ts';
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersQuery {
/**
* Get users after this user ID
*/
after?: Snowflake;
/**
* Max number of users to return (1-100)
*
* @default 25
*/
limit?: number;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-create-request-object-poll-create-request-object-structure
*/
export interface RESTAPIPollCreate extends Omit<APIPoll, 'answers' | 'expiry' | 'results'> {
/**
* Number of hours the poll should be open for, up to 7 days
*/
duration: number;
/**
* Each of the answers available in the poll, up to 10
*/
answers: Omit<APIPollAnswer, 'answer_id'>[];
}
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersResult {
/**
* Users who voted for this answer
*/
users: APIUser[];
}
/**
* https://discord.com/developers/docs/resources/poll#expire-poll
*/
export type RESTPostAPIPollExpireResult = APIMessage;

View File

@@ -35,6 +35,10 @@ export interface RESTPatchAPICurrentUserJSONBody {
* If passed, modifies the user's avatar
*/
avatar?: string | null | undefined;
/**
* If passed, modifies the user's banner
*/
banner?: string | null | undefined;
}
/**

View File

@@ -10,6 +10,7 @@ import type {
} from '../../payloads/v9/mod.ts';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals.ts';
import type { RESTAPIAttachment } from './channel.ts';
import type { RESTAPIPollCreate } from './poll.ts';
/**
* https://discord.com/developers/docs/resources/webhook#create-webhook
*/
@@ -154,6 +155,10 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
* Array of tag ids to apply to the thread
*/
applied_tags?: Snowflake[] | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -203,6 +203,8 @@ export enum GatewayIntentBits {
GuildScheduledEvents = 1 << 16,
AutoModerationConfiguration = 1 << 20,
AutoModerationExecution = 1 << 21,
GuildMessagePolls = 1 << 24,
DirectMessagePolls = 1 << 25,
}
/**
@@ -260,6 +262,8 @@ export enum GatewayDispatchEvents {
VoiceServerUpdate = 'VOICE_SERVER_UPDATE',
VoiceStateUpdate = 'VOICE_STATE_UPDATE',
WebhooksUpdate = 'WEBHOOKS_UPDATE',
MessagePollVoteAdd = 'MESSAGE_POLL_VOTE_ADD',
MessagePollVoteRemove = 'MESSAGE_POLL_VOTE_REMOVE',
GuildScheduledEventCreate = 'GUILD_SCHEDULED_EVENT_CREATE',
GuildScheduledEventUpdate = 'GUILD_SCHEDULED_EVENT_UPDATE',
GuildScheduledEventDelete = 'GUILD_SCHEDULED_EVENT_DELETE',
@@ -328,6 +332,8 @@ export type GatewayDispatchPayload =
| GatewayMessageCreateDispatch
| GatewayMessageDeleteBulkDispatch
| GatewayMessageDeleteDispatch
| GatewayMessagePollVoteAddDispatch
| GatewayMessagePollVoteRemoveDispatch
| GatewayMessageReactionAddDispatch
| GatewayMessageReactionRemoveAllDispatch
| GatewayMessageReactionRemoveDispatch
@@ -1813,6 +1819,45 @@ export interface GatewayGuildAuditLogEntryCreateDispatchData extends APIAuditLog
guild_id: Snowflake;
}
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-add
*/
export type GatewayMessagePollVoteAddDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteAdd,
GatewayMessagePollVoteDispatchData
>;
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-remove
*/
export type GatewayMessagePollVoteRemoveDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteRemove,
GatewayMessagePollVoteDispatchData
>;
export interface GatewayMessagePollVoteDispatchData {
/**
* ID of the user
*/
user_id: Snowflake;
/**
* ID of the channel
*/
channel_id: Snowflake;
/**
* ID of the message
*/
message_id: Snowflake;
/**
* ID of the guild
*/
guild_id?: Snowflake;
/**
* ID of the answer
*/
answer_id: number;
}
// #endregion Dispatch Payloads
// #region Sendable Payloads

View File

@@ -202,6 +202,8 @@ export enum GatewayIntentBits {
GuildScheduledEvents = 1 << 16,
AutoModerationConfiguration = 1 << 20,
AutoModerationExecution = 1 << 21,
GuildMessagePolls = 1 << 24,
DirectMessagePolls = 1 << 25,
}
/**
@@ -259,6 +261,8 @@ export enum GatewayDispatchEvents {
VoiceServerUpdate = 'VOICE_SERVER_UPDATE',
VoiceStateUpdate = 'VOICE_STATE_UPDATE',
WebhooksUpdate = 'WEBHOOKS_UPDATE',
MessagePollVoteAdd = 'MESSAGE_POLL_VOTE_ADD',
MessagePollVoteRemove = 'MESSAGE_POLL_VOTE_REMOVE',
GuildScheduledEventCreate = 'GUILD_SCHEDULED_EVENT_CREATE',
GuildScheduledEventUpdate = 'GUILD_SCHEDULED_EVENT_UPDATE',
GuildScheduledEventDelete = 'GUILD_SCHEDULED_EVENT_DELETE',
@@ -327,6 +331,8 @@ export type GatewayDispatchPayload =
| GatewayMessageCreateDispatch
| GatewayMessageDeleteBulkDispatch
| GatewayMessageDeleteDispatch
| GatewayMessagePollVoteAddDispatch
| GatewayMessagePollVoteRemoveDispatch
| GatewayMessageReactionAddDispatch
| GatewayMessageReactionRemoveAllDispatch
| GatewayMessageReactionRemoveDispatch
@@ -1812,6 +1818,45 @@ export interface GatewayGuildAuditLogEntryCreateDispatchData extends APIAuditLog
guild_id: Snowflake;
}
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-add
*/
export type GatewayMessagePollVoteAddDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteAdd,
GatewayMessagePollVoteDispatchData
>;
/**
* https://discord.com/developers/docs/topics/gateway-events#message-poll-vote-remove
*/
export type GatewayMessagePollVoteRemoveDispatch = DataPayload<
GatewayDispatchEvents.MessagePollVoteRemove,
GatewayMessagePollVoteDispatchData
>;
export interface GatewayMessagePollVoteDispatchData {
/**
* ID of the user
*/
user_id: Snowflake;
/**
* ID of the channel
*/
channel_id: Snowflake;
/**
* ID of the message
*/
message_id: Snowflake;
/**
* ID of the guild
*/
guild_id?: Snowflake;
/**
* ID of the answer
*/
answer_id: number;
}
// #endregion Dispatch Payloads
// #region Sendable Payloads

4564
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "discord-api-types",
"version": "0.37.74",
"version": "0.37.80",
"description": "Discord API typings that are kept up to date for use in bot library creation.",
"homepage": "https://discord-api-types.dev",
"exports": {
@@ -152,7 +152,7 @@
"prettier": "^3.2.5",
"pretty-quick": "^4.0.0",
"rimraf": "^5.0.5",
"tsd": "^0.30.7",
"tsd": "^0.31.0",
"tsutils": "^3.21.0",
"typescript": "^5.3.3"
},

View File

@@ -276,6 +276,12 @@ export const PermissionFlagsBits = {
* Applies to channel types: Text, Voice, Stage
*/
SendVoiceMessages: 1n << 46n,
/**
* Allows sending polls
*
* Applies to channel types: Text, Voice, Stage
*/
SendPolls: 1n << 49n,
} as const;
/**

View File

@@ -17,6 +17,7 @@ import type {
GuildDefaultMessageNotifications,
GuildExplicitContentFilter,
GuildMFALevel,
GuildSystemChannelFlags,
GuildVerificationLevel,
IntegrationExpireBehavior,
} from './guild';
@@ -398,6 +399,7 @@ export type APIAuditLogChange =
| APIAuditLogChangeKeyRulesChannelId
| APIAuditLogChangeKeySplashHash
| APIAuditLogChangeKeyStatus
| APIAuditLogChangeKeySystemChannelFlags
| APIAuditLogChangeKeySystemChannelId
| APIAuditLogChangeKeyTags
| APIAuditLogChangeKeyTemporary
@@ -543,6 +545,14 @@ export type APIAuditLogChangeKeyWidgetEnabled = AuditLogChangeData<'widget_enabl
*/
export type APIAuditLogChangeKeyWidgetChannelId = AuditLogChangeData<'widget_channel_id', Snowflake>;
/**
* Returned when a guild's system_channel_flags is changed
*/
export type APIAuditLogChangeKeySystemChannelFlags = AuditLogChangeData<
'system_channel_flags',
GuildSystemChannelFlags
>;
/**
* Returned when a guild's system_channel_id is changed
*/

View File

@@ -8,6 +8,7 @@ import type { APIPartialEmoji } from './emoji';
import type { APIGuildMember } from './guild';
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions';
import type { APIRole } from './permissions';
import type { APIPoll } from './poll';
import type { APISticker, APIStickerItem } from './sticker';
import type { APIUser } from './user';
@@ -715,6 +716,17 @@ export interface APIMessage {
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
*/
resolved?: APIInteractionDataResolved;
/**
* A poll!
*
* The `MESSAGE_CONTENT` privileged gateway intent is required for verified applications to receive a non-empty value from this field
*
* In the Discord Developers Portal, you need to enable the toggle of this intent of your application in **Bot > Privileged Gateway Intents**.
* You also need to specify the intent bit value (`1 << 15`) if you are connecting to the gateway
*
* See https://support-dev.discord.com/hc/articles/4404772028055
*/
poll?: APIPoll;
}
/**

View File

@@ -10,6 +10,7 @@ export * from './guildScheduledEvent';
export * from './interactions';
export * from './invite';
export * from './oauth2';
export * from './poll';
export * from './permissions';
export * from './stageInstance';
export * from './sticker';

107
payloads/v10/poll.ts Normal file
View File

@@ -0,0 +1,107 @@
/**
* Types extracted from https://discord.com/developers/docs/resources/poll
*/
import type { APIPartialEmoji } from './emoji';
/**
* https://discord.com/developers/docs/resources/poll#poll-object-poll-object-structure
*/
export interface APIPoll {
/**
* The question of the poll
*/
question: APIPollMedia;
/**
* Each of the answers available in the poll, up to 10
*/
answers: APIPollAnswer[];
/**
* The time when the poll ends (IS08601 timestamp)
*/
expiry: string;
/**
* Whether a user can select multiple answers
*/
allow_multiselect: boolean;
/**
* The layout type of the poll
*/
layout_type: PollLayoutType;
/**
* The results of the poll
*/
results?: APIPollResults;
}
/**
* https://discord.com/developers/docs/resources/poll#layout-type
*/
export enum PollLayoutType {
/**
* The, uhm, default layout type
*/
Default = 1,
}
/**
* https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
*/
export interface APIPollMedia {
/**
* The text of the field
*
* The maximum length is `300` for the question, and `55` for any answer
*/
text?: string;
/**
* The emoji of the field
*/
emoji?: APIPartialEmoji;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
*/
export interface APIPollAnswer {
/**
* The ID of the answer. Starts at `1` for the first answer and goes up sequentially
*/
answer_id: number;
/**
* The data of the answer
*/
media: APIPollMedia;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
*/
export interface APIPollResults {
/**
* Whether the votes have been precisely counted
*/
is_finalized: boolean;
/**
* The counts for each answer
*/
answer_counts: APIPollAnswerCount[];
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-answer-count-object-structure
*/
export interface APIPollAnswerCount {
/**
* The `answer_id`
*/
id: number;
/**
* The number of votes for this answer
*/
count: number;
/**
* Whether the current user voted for this answer
*/
me_voted: boolean;
}

View File

@@ -45,6 +45,8 @@ export interface APIStageInstance {
export enum StageInstancePrivacyLevel {
/**
* The stage instance is visible publicly, such as on stage discovery
*
* @deprecated
*/
Public = 1,
/**

View File

@@ -266,6 +266,7 @@ export interface APIConnection {
export enum ConnectionService {
BattleNet = 'battlenet',
BungieNet = 'bungie',
eBay = 'ebay',
EpicGames = 'epicgames',
Facebook = 'facebook',

View File

@@ -17,6 +17,7 @@ import type {
GuildDefaultMessageNotifications,
GuildExplicitContentFilter,
GuildMFALevel,
GuildSystemChannelFlags,
GuildVerificationLevel,
IntegrationExpireBehavior,
} from './guild';
@@ -398,6 +399,7 @@ export type APIAuditLogChange =
| APIAuditLogChangeKeyRulesChannelId
| APIAuditLogChangeKeySplashHash
| APIAuditLogChangeKeyStatus
| APIAuditLogChangeKeySystemChannelFlags
| APIAuditLogChangeKeySystemChannelId
| APIAuditLogChangeKeyTags
| APIAuditLogChangeKeyTemporary
@@ -543,6 +545,14 @@ export type APIAuditLogChangeKeyWidgetEnabled = AuditLogChangeData<'widget_enabl
*/
export type APIAuditLogChangeKeyWidgetChannelId = AuditLogChangeData<'widget_channel_id', Snowflake>;
/**
* Returned when a guild's system_channel_flags is changed
*/
export type APIAuditLogChangeKeySystemChannelFlags = AuditLogChangeData<
'system_channel_flags',
GuildSystemChannelFlags
>;
/**
* Returned when a guild's system_channel_id is changed
*/

View File

@@ -8,6 +8,7 @@ import type { APIPartialEmoji } from './emoji';
import type { APIGuildMember } from './guild';
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions';
import type { APIRole } from './permissions';
import type { APIPoll } from './poll';
import type { APISticker, APIStickerItem } from './sticker';
import type { APIUser } from './user';
@@ -702,6 +703,17 @@ export interface APIMessage {
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
*/
resolved?: APIInteractionDataResolved;
/**
* A poll!
*
* The `MESSAGE_CONTENT` privileged gateway intent is required for verified applications to receive a non-empty value from this field
*
* In the Discord Developers Portal, you need to enable the toggle of this intent of your application in **Bot > Privileged Gateway Intents**.
* You also need to specify the intent bit value (`1 << 15`) if you are connecting to the gateway
*
* See https://support-dev.discord.com/hc/articles/4404772028055
*/
poll?: APIPoll;
}
/**

View File

@@ -10,6 +10,7 @@ export * from './guildScheduledEvent';
export * from './interactions';
export * from './invite';
export * from './oauth2';
export * from './poll';
export * from './permissions';
export * from './stageInstance';
export * from './sticker';

107
payloads/v9/poll.ts Normal file
View File

@@ -0,0 +1,107 @@
/**
* Types extracted from https://discord.com/developers/docs/resources/poll
*/
import type { APIPartialEmoji } from './emoji';
/**
* https://discord.com/developers/docs/resources/poll#poll-object-poll-object-structure
*/
export interface APIPoll {
/**
* The question of the poll
*/
question: APIPollMedia;
/**
* Each of the answers available in the poll, up to 10
*/
answers: APIPollAnswer[];
/**
* The time when the poll ends (IS08601 timestamp)
*/
expiry: string;
/**
* Whether a user can select multiple answers
*/
allow_multiselect: boolean;
/**
* The layout type of the poll
*/
layout_type: PollLayoutType;
/**
* The results of the poll
*/
results?: APIPollResults;
}
/**
* https://discord.com/developers/docs/resources/poll#layout-type
*/
export enum PollLayoutType {
/**
* The, uhm, default layout type
*/
Default = 1,
}
/**
* https://discord.com/developers/docs/resources/poll#poll-media-object-poll-media-object-structure
*/
export interface APIPollMedia {
/**
* The text of the field
*
* The maximum length is `300` for the question, and `55` for any answer
*/
text?: string;
/**
* The emoji of the field
*/
emoji?: APIPartialEmoji;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-answer-object-poll-answer-object-structure
*/
export interface APIPollAnswer {
/**
* The ID of the answer. Starts at `1` for the first answer and goes up sequentially
*/
answer_id: number;
/**
* The data of the answer
*/
media: APIPollMedia;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-results-object-structure
*/
export interface APIPollResults {
/**
* Whether the votes have been precisely counted
*/
is_finalized: boolean;
/**
* The counts for each answer
*/
answer_counts: APIPollAnswerCount[];
}
/**
* https://discord.com/developers/docs/resources/poll#poll-results-object-poll-answer-count-object-structure
*/
export interface APIPollAnswerCount {
/**
* The `answer_id`
*/
id: number;
/**
* The number of votes for this answer
*/
count: number;
/**
* Whether the current user voted for this answer
*/
me_voted: boolean;
}

View File

@@ -266,6 +266,7 @@ export interface APIConnection {
export enum ConnectionService {
BattleNet = 'battlenet',
BungieNet = 'bungie',
eBay = 'ebay',
EpicGames = 'epicgames',
Facebook = 'facebook',

View File

@@ -1,5 +1,19 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended"],
"ignorePaths": ["website/"]
"extends": ["config:recommended", ":semanticCommitTypeAll(chore)"],
"semanticCommits": "enabled",
"lockFileMaintenance": {
"enabled": true,
"schedule": ["before 1pm every friday"]
},
"ignorePaths": ["website/"],
"packageRules": [
{
"matchUpdateTypes": ["patch", "minor"],
"matchCurrentVersion": "!/^0/",
"groupName": "patch/minor dependencies",
"groupSlug": "all-non-major"
}
],
"schedule": ["before 1pm every friday"]
}

View File

@@ -293,6 +293,16 @@ export enum RESTJSONErrorCodes {
CannotEnableOnboardingRequirementsAreNotMet = 350_000,
CannotUpdateOnboardingWhileBelowRequirements,
FailedToBanUsers = 500_000,
PollVotingBlocked = 520_000,
PollExpired,
InvalidChannelTypeForPollCreation,
CannotEditAPollMessage,
CannotUseAnEmojiIncludedWithThePoll,
CannotExpireANonPollMessage = 520_006,
}
/**

View File

@@ -26,6 +26,7 @@ import type {
ChannelFlags,
} from '../../payloads/v10/index';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals';
import type { RESTAPIPollCreate } from './poll';
export interface APIChannelPatchOverwrite extends RESTPutAPIChannelPermissionJSONBody {
id: Snowflake;
@@ -325,6 +326,10 @@ export interface RESTPostAPIChannelMessageJSONBody {
* If another message was created by the same author with the same nonce, that message will be returned and no new message will be created.
*/
enforce_nonce?: boolean | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -604,6 +604,34 @@ export type RESTPutAPIGuildBanResult = never;
*/
export type RESTDeleteAPIGuildBanResult = never;
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanJSONBody {
/**
* List of user ids to ban (max 200)
*/
user_ids: Snowflake[];
/**
* Number of seconds to delete messages for, between 0 and 604800 (7 days)
*/
delete_message_seconds?: number | undefined;
}
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanResult {
/**
* List of user ids, that were successfully banned
*/
banned_users: Snowflake[];
/**
* List of user ids, that were not banned
*/
failed_users: Snowflake[];
}
/**
* https://discord.com/developers/docs/resources/guild#get-guild-roles
*/

View File

@@ -12,6 +12,7 @@ export * from './guildScheduledEvent';
export * from './interactions';
export * from './invite';
export * from './oauth2';
export * from './poll';
export * from './stageInstance';
export * from './sticker';
export * from './template';
@@ -461,6 +462,22 @@ export const Routes = {
return `/guilds/${guildId}/templates/${code}` as const;
},
/**
* Route for:
* - GET `/channels/{channel.id}/polls/{message.id}/answers/{answer_id}`
*/
pollAnswerVoters(channelId: Snowflake, messageId: Snowflake, answerId: number) {
return `/channels/${channelId}/polls/${messageId}/answers/${answerId}` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/polls/{message.id}/expire`
*/
expirePoll(channelId: Snowflake, messageId: Snowflake) {
return `/channels/${channelId}/polls/${messageId}/expire` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/threads`
@@ -910,6 +927,7 @@ export const Routes = {
currentApplication() {
return '/applications/@me' as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/entitlements`
@@ -918,6 +936,7 @@ export const Routes = {
entitlements(applicationId: Snowflake) {
return `/applications/${applicationId}/entitlements` as const;
},
/**
* Route for:
* - DELETE `/applications/{application.id}/entitlements/{entitlement.id}`
@@ -925,6 +944,7 @@ export const Routes = {
entitlement(applicationId: Snowflake, entitlementId: Snowflake) {
return `/applications/${applicationId}/entitlements/${entitlementId}` as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/skus`
@@ -932,6 +952,14 @@ export const Routes = {
skus(applicationId: Snowflake) {
return `/applications/${applicationId}/skus` as const;
},
/**
* Route for:
* - POST `/guilds/{guild.id}/bulk-ban`
*/
guildBulkBan(guildId: Snowflake) {
return `/guilds/${guildId}/bulk-ban` as const;
},
};
export const StickerPackApplicationId = '710982414301790216';

47
rest/v10/poll.ts Normal file
View File

@@ -0,0 +1,47 @@
import type { Snowflake } from '../../globals';
import type { APIMessage, APIPoll, APIPollAnswer, APIUser } from '../../v10';
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersQuery {
/**
* Get users after this user ID
*/
after?: Snowflake;
/**
* Max number of users to return (1-100)
*
* @default 25
*/
limit?: number;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-create-request-object-poll-create-request-object-structure
*/
export interface RESTAPIPollCreate extends Omit<APIPoll, 'answers' | 'expiry' | 'results'> {
/**
* Number of hours the poll should be open for, up to 7 days
*/
duration: number;
/**
* Each of the answers available in the poll, up to 10
*/
answers: Omit<APIPollAnswer, 'answer_id'>[];
}
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersResult {
/**
* Users who voted for this answer
*/
users: APIUser[];
}
/**
* https://discord.com/developers/docs/resources/poll#expire-poll
*/
export type RESTPostAPIPollExpireResult = APIMessage;

View File

@@ -35,6 +35,10 @@ export interface RESTPatchAPICurrentUserJSONBody {
* If passed, modifies the user's avatar
*/
avatar?: string | null | undefined;
/**
* If passed, modifies the user's banner
*/
banner?: string | null | undefined;
}
/**

View File

@@ -10,6 +10,7 @@ import type {
} from '../../payloads/v10/index';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals';
import type { RESTAPIAttachment } from './channel';
import type { RESTAPIPollCreate } from './poll';
/**
* https://discord.com/developers/docs/resources/webhook#create-webhook
*/
@@ -154,6 +155,10 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
* Array of tag ids to apply to the thread
*/
applied_tags?: Snowflake[] | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -26,6 +26,7 @@ import type {
ChannelFlags,
} from '../../payloads/v9/index';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals';
import type { RESTAPIPollCreate } from './poll';
export interface APIChannelPatchOverwrite extends RESTPutAPIChannelPermissionJSONBody {
id: Snowflake;
@@ -333,6 +334,10 @@ export interface RESTPostAPIChannelMessageJSONBody {
* If another message was created by the same author with the same nonce, that message will be returned and no new message will be created.
*/
enforce_nonce?: boolean | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -610,6 +610,34 @@ export type RESTPutAPIGuildBanResult = never;
*/
export type RESTDeleteAPIGuildBanResult = never;
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanJSONBody {
/**
* List of user ids to ban (max 200)
*/
user_ids: Snowflake[];
/**
* Number of seconds to delete messages for, between 0 and 604800 (7 days)
*/
delete_message_seconds?: number | undefined;
}
/**
* https://discord.com/developers/docs/resources/guild#bulk-guild-ban
*/
export interface RESTPostAPIGuildBulkBanResult {
/**
* List of user ids, that were successfully banned
*/
banned_users: Snowflake[];
/**
* List of user ids, that were not banned
*/
failed_users: Snowflake[];
}
/**
* https://discord.com/developers/docs/resources/guild#get-guild-roles
*/

View File

@@ -12,6 +12,7 @@ export * from './guildScheduledEvent';
export * from './interactions';
export * from './invite';
export * from './oauth2';
export * from './poll';
export * from './stageInstance';
export * from './sticker';
export * from './template';
@@ -461,6 +462,22 @@ export const Routes = {
return `/guilds/${guildId}/templates/${code}` as const;
},
/**
* Route for:
* - GET `/channels/{channel.id}/polls/{message.id}/answers/{answer_id}`
*/
pollAnswerVoters(channelId: Snowflake, messageId: Snowflake, answerId: number) {
return `/channels/${channelId}/polls/${messageId}/answers/${answerId}` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/polls/{message.id}/expire`
*/
expirePoll(channelId: Snowflake, messageId: Snowflake) {
return `/channels/${channelId}/polls/${messageId}/expire` as const;
},
/**
* Route for:
* - POST `/channels/{channel.id}/threads`
@@ -919,6 +936,7 @@ export const Routes = {
currentApplication() {
return '/applications/@me' as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/entitlements`
@@ -927,6 +945,7 @@ export const Routes = {
entitlements(applicationId: Snowflake) {
return `/applications/${applicationId}/entitlements` as const;
},
/**
* Route for:
* - DELETE `/applications/{application.id}/entitlements/{entitlement.id}`
@@ -934,6 +953,7 @@ export const Routes = {
entitlement(applicationId: Snowflake, entitlementId: Snowflake) {
return `/applications/${applicationId}/entitlements/${entitlementId}` as const;
},
/**
* Route for:
* - GET `/applications/{application.id}/skus`
@@ -941,6 +961,14 @@ export const Routes = {
skus(applicationId: Snowflake) {
return `/applications/${applicationId}/skus` as const;
},
/**
* Route for:
* - POST `/guilds/{guild.id}/bulk-ban`
*/
guildBulkBan(guildId: Snowflake) {
return `/guilds/${guildId}/bulk-ban` as const;
},
};
export const StickerPackApplicationId = '710982414301790216';

47
rest/v9/poll.ts Normal file
View File

@@ -0,0 +1,47 @@
import type { Snowflake } from '../../globals';
import type { APIMessage, APIPoll, APIPollAnswer, APIUser } from '../../v9';
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersQuery {
/**
* Get users after this user ID
*/
after?: Snowflake;
/**
* Max number of users to return (1-100)
*
* @default 25
*/
limit?: number;
}
/**
* https://discord.com/developers/docs/resources/poll#poll-create-request-object-poll-create-request-object-structure
*/
export interface RESTAPIPollCreate extends Omit<APIPoll, 'answers' | 'expiry' | 'results'> {
/**
* Number of hours the poll should be open for, up to 7 days
*/
duration: number;
/**
* Each of the answers available in the poll, up to 10
*/
answers: Omit<APIPollAnswer, 'answer_id'>[];
}
/**
* https://discord.com/developers/docs/resources/poll#get-answer-voters
*/
export interface RESTGetAPIPollAnswerVotersResult {
/**
* Users who voted for this answer
*/
users: APIUser[];
}
/**
* https://discord.com/developers/docs/resources/poll#expire-poll
*/
export type RESTPostAPIPollExpireResult = APIMessage;

View File

@@ -35,6 +35,10 @@ export interface RESTPatchAPICurrentUserJSONBody {
* If passed, modifies the user's avatar
*/
avatar?: string | null | undefined;
/**
* If passed, modifies the user's banner
*/
banner?: string | null | undefined;
}
/**

View File

@@ -10,6 +10,7 @@ import type {
} from '../../payloads/v9/index';
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals';
import type { RESTAPIAttachment } from './channel';
import type { RESTAPIPollCreate } from './poll';
/**
* https://discord.com/developers/docs/resources/webhook#create-webhook
*/
@@ -154,6 +155,10 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
* Array of tag ids to apply to the thread
*/
applied_tags?: Snowflake[] | undefined;
/**
* A poll!
*/
poll?: RESTAPIPollCreate | undefined;
}
/**

View File

@@ -1,20 +1,48 @@
/* eslint-disable @typescript-eslint/restrict-template-expressions, @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access */
import { execSync } from 'node:child_process';
import { execSync, spawnSync } from 'node:child_process';
import process from 'node:process';
import { Octokit } from '@octokit/action';
import conventionalRecommendedBump from 'conventional-recommended-bump';
const IGNORED_COMMIT_AUTHORS = ['renovate[bot]', 'dependabot[bot]'];
const RELEASE_COMMIT_PREFIX = 'chore(release):';
console.log('🚀 Running the release script...');
const lastCommitMessage = execSync('git log -1 --pretty=%B', { encoding: 'utf8' });
console.log(` Last commit message: ${lastCommitMessage}`);
if (lastCommitMessage.startsWith('chore(release)')) {
if (lastCommitMessage.startsWith(RELEASE_COMMIT_PREFIX)) {
console.log('Preventing the action from completing as there are no new commits to release.');
process.exit(1);
}
const lastReleaseCommitHash = execSync(`git log -1 --grep="${RELEASE_COMMIT_PREFIX}" --pretty=%H`, {
encoding: 'utf8',
});
if (lastReleaseCommitHash) {
console.log(` Last release commit hash: ${lastReleaseCommitHash}`);
const commitAuthorsAfterLastReleaseProcess = spawnSync(
'git',
['log', `${lastReleaseCommitHash.trim()}..HEAD`, '--pretty=%an'],
{ encoding: 'utf8' },
);
const commitAuthorsAfterLastRelease = commitAuthorsAfterLastReleaseProcess.stdout.split('\n').filter(Boolean);
console.log(` Authors after the last release: ${commitAuthorsAfterLastRelease.join(', ')}`);
if (commitAuthorsAfterLastRelease.every((author) => IGNORED_COMMIT_AUTHORS.includes(author))) {
console.log(
'Preventing the action from completing as all commits after the last release were made by ignored authors.',
);
process.exit(1);
}
}
const conventionalReleaseTypesTo0Ver = new Map([
['major', 'minor'],
['minor', 'patch'],
@@ -64,7 +92,7 @@ const pullRequests = await octokit.pulls.list({
const previousPullRequest = pullRequests.data.find(
// Find release PRs made by GitHub actions
({ title, user }) => title.startsWith(`chore(release):`) && user?.id === 41_898_282,
({ title, user }) => title.startsWith(RELEASE_COMMIT_PREFIX) && user?.id === 41_898_282,
);
if (previousPullRequest) {

View File

@@ -7123,20 +7123,20 @@
}
},
"node_modules/body-parser": {
"version": "1.20.0",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
"integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==",
"version": "1.20.2",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz",
"integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==",
"dependencies": {
"bytes": "3.1.2",
"content-type": "~1.0.4",
"content-type": "~1.0.5",
"debug": "2.6.9",
"depd": "2.0.0",
"destroy": "1.2.0",
"http-errors": "2.0.0",
"iconv-lite": "0.4.24",
"on-finished": "2.4.1",
"qs": "6.10.3",
"raw-body": "2.5.1",
"qs": "6.11.0",
"raw-body": "2.5.2",
"type-is": "~1.6.18",
"unpipe": "1.0.0"
},
@@ -8073,9 +8073,9 @@
}
},
"node_modules/content-type": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
"integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
"engines": {
"node": ">= 0.6"
}
@@ -8142,9 +8142,9 @@
}
},
"node_modules/cookie": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
"integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
"integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
"engines": {
"node": ">= 0.6"
}
@@ -10647,16 +10647,16 @@
}
},
"node_modules/express": {
"version": "4.18.1",
"resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz",
"integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==",
"version": "4.19.2",
"resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz",
"integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==",
"dependencies": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
"body-parser": "1.20.0",
"body-parser": "1.20.2",
"content-disposition": "0.5.4",
"content-type": "~1.0.4",
"cookie": "0.5.0",
"cookie": "0.6.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "2.0.0",
@@ -10672,7 +10672,7 @@
"parseurl": "~1.3.3",
"path-to-regexp": "0.1.7",
"proxy-addr": "~2.0.7",
"qs": "6.10.3",
"qs": "6.11.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.2.1",
"send": "0.18.0",
@@ -11116,9 +11116,9 @@
}
},
"node_modules/follow-redirects": {
"version": "1.15.4",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz",
"integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==",
"version": "1.15.6",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
"integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==",
"funding": [
{
"type": "individual",
@@ -16417,9 +16417,9 @@
}
},
"node_modules/qs": {
"version": "6.10.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz",
"integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==",
"version": "6.11.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
"integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
"dependencies": {
"side-channel": "^1.0.4"
},
@@ -16483,9 +16483,9 @@
}
},
"node_modules/raw-body": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
"integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
"integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"dependencies": {
"bytes": "3.1.2",
"http-errors": "2.0.0",
@@ -20266,9 +20266,9 @@
}
},
"node_modules/webpack-dev-middleware": {
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz",
"integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==",
"version": "5.3.4",
"resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz",
"integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==",
"dependencies": {
"colorette": "^2.0.10",
"memfs": "^3.4.3",
@@ -26404,20 +26404,20 @@
}
},
"body-parser": {
"version": "1.20.0",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
"integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==",
"version": "1.20.2",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz",
"integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==",
"requires": {
"bytes": "3.1.2",
"content-type": "~1.0.4",
"content-type": "~1.0.5",
"debug": "2.6.9",
"depd": "2.0.0",
"destroy": "1.2.0",
"http-errors": "2.0.0",
"iconv-lite": "0.4.24",
"on-finished": "2.4.1",
"qs": "6.10.3",
"raw-body": "2.5.1",
"qs": "6.11.0",
"raw-body": "2.5.2",
"type-is": "~1.6.18",
"unpipe": "1.0.0"
},
@@ -27100,9 +27100,9 @@
"integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA=="
},
"content-type": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
"integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="
},
"conventional-changelog-angular": {
"version": "5.0.13",
@@ -27154,9 +27154,9 @@
}
},
"cookie": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
"integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
"integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw=="
},
"cookie-signature": {
"version": "1.0.6",
@@ -28952,16 +28952,16 @@
}
},
"express": {
"version": "4.18.1",
"resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz",
"integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==",
"version": "4.19.2",
"resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz",
"integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==",
"requires": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
"body-parser": "1.20.0",
"body-parser": "1.20.2",
"content-disposition": "0.5.4",
"content-type": "~1.0.4",
"cookie": "0.5.0",
"cookie": "0.6.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "2.0.0",
@@ -28977,7 +28977,7 @@
"parseurl": "~1.3.3",
"path-to-regexp": "0.1.7",
"proxy-addr": "~2.0.7",
"qs": "6.10.3",
"qs": "6.11.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.2.1",
"send": "0.18.0",
@@ -29331,9 +29331,9 @@
}
},
"follow-redirects": {
"version": "1.15.4",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz",
"integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw=="
"version": "1.15.6",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
"integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA=="
},
"for-each": {
"version": "0.3.3",
@@ -33017,9 +33017,9 @@
"dev": true
},
"qs": {
"version": "6.10.3",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz",
"integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==",
"version": "6.11.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
"integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
"requires": {
"side-channel": "^1.0.4"
}
@@ -33057,9 +33057,9 @@
"integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4="
},
"raw-body": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
"integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
"integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"requires": {
"bytes": "3.1.2",
"http-errors": "2.0.0",
@@ -35873,9 +35873,9 @@
}
},
"webpack-dev-middleware": {
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz",
"integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==",
"version": "5.3.4",
"resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz",
"integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==",
"requires": {
"colorette": "^2.0.10",
"memfs": "^3.4.3",

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
[{"entryPoints":{"globals":{"path":"globals.ts","label":"Global Types"},"gateway/common":{"path":"gateway/common.ts","label":"Gateway - Common Types"},"payloads/common":{"path":"payloads/common.ts","label":"Payloads - Common Types"},"rest/common":{"path":"rest/common.ts","label":"REST - Common Types"},"rpc/common":{"path":"rpc/common.ts","label":"RPC - Common Types"},"v6":{"path":"v6.ts","label":"API v6 - Deprecated"},"v8":{"path":"v8.ts","label":"API v8 - Deprecated"},"v9":{"path":"v9.ts","label":"API v9"},"v10":{"path":"v10.ts","label":"API v10"},"rpc/v8":{"path":"rpc/v8.ts","label":"RPC v8"},"rpc/v9":{"path":"rpc/v9.ts","label":"RPC v9"},"rpc/v10":{"path":"rpc/v10.ts","label":"RPC v10"},"voice/v4":{"path":"voice/v4.ts","label":"Voice v4"},"utils/v8":{"path":"utils/v8.ts","label":"Utils v8"},"utils/v9":{"path":"utils/v9.ts","label":"Utils v9"},"utils/v10":{"path":"utils/v10.ts","label":"Utils v10"}},"packagePath":"./","packageSlug":"discord-api-types","packageName":"discord-api-types","packageVersion":"0.37.73"}]
[{"entryPoints":{"globals":{"path":"globals.ts","label":"Global Types"},"gateway/common":{"path":"gateway/common.ts","label":"Gateway - Common Types"},"payloads/common":{"path":"payloads/common.ts","label":"Payloads - Common Types"},"rest/common":{"path":"rest/common.ts","label":"REST - Common Types"},"rpc/common":{"path":"rpc/common.ts","label":"RPC - Common Types"},"v6":{"path":"v6.ts","label":"API v6 - Deprecated"},"v8":{"path":"v8.ts","label":"API v8 - Deprecated"},"v9":{"path":"v9.ts","label":"API v9"},"v10":{"path":"v10.ts","label":"API v10"},"rpc/v8":{"path":"rpc/v8.ts","label":"RPC v8"},"rpc/v9":{"path":"rpc/v9.ts","label":"RPC v9"},"rpc/v10":{"path":"rpc/v10.ts","label":"RPC v10"},"voice/v4":{"path":"voice/v4.ts","label":"Voice v4"},"utils/v8":{"path":"utils/v8.ts","label":"Utils v8"},"utils/v9":{"path":"utils/v9.ts","label":"Utils v9"},"utils/v10":{"path":"utils/v10.ts","label":"Utils v10"}},"packagePath":"./","packageSlug":"discord-api-types","packageName":"discord-api-types","packageVersion":"0.37.79"}]

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
[{"entryPoints":{"globals":{"path":"globals.ts","label":"Global Types"},"gateway/common":{"path":"gateway/common.ts","label":"Gateway - Common Types"},"payloads/common":{"path":"payloads/common.ts","label":"Payloads - Common Types"},"rest/common":{"path":"rest/common.ts","label":"REST - Common Types"},"rpc/common":{"path":"rpc/common.ts","label":"RPC - Common Types"},"v6":{"path":"v6.ts","label":"API v6 - Deprecated"},"v8":{"path":"v8.ts","label":"API v8 - Deprecated"},"v9":{"path":"v9.ts","label":"API v9"},"v10":{"path":"v10.ts","label":"API v10"},"rpc/v8":{"path":"rpc/v8.ts","label":"RPC v8"},"rpc/v9":{"path":"rpc/v9.ts","label":"RPC v9"},"rpc/v10":{"path":"rpc/v10.ts","label":"RPC v10"},"voice/v4":{"path":"voice/v4.ts","label":"Voice v4"},"utils/v8":{"path":"utils/v8.ts","label":"Utils v8"},"utils/v9":{"path":"utils/v9.ts","label":"Utils v9"},"utils/v10":{"path":"utils/v10.ts","label":"Utils v10"}},"packagePath":"./","packageSlug":"discord-api-types","packageName":"discord-api-types","packageVersion":"0.37.74"}]
[{"entryPoints":{"globals":{"path":"globals.ts","label":"Global Types"},"gateway/common":{"path":"gateway/common.ts","label":"Gateway - Common Types"},"payloads/common":{"path":"payloads/common.ts","label":"Payloads - Common Types"},"rest/common":{"path":"rest/common.ts","label":"REST - Common Types"},"rpc/common":{"path":"rpc/common.ts","label":"RPC - Common Types"},"v6":{"path":"v6.ts","label":"API v6 - Deprecated"},"v8":{"path":"v8.ts","label":"API v8 - Deprecated"},"v9":{"path":"v9.ts","label":"API v9"},"v10":{"path":"v10.ts","label":"API v10"},"rpc/v8":{"path":"rpc/v8.ts","label":"RPC v8"},"rpc/v9":{"path":"rpc/v9.ts","label":"RPC v9"},"rpc/v10":{"path":"rpc/v10.ts","label":"RPC v10"},"voice/v4":{"path":"voice/v4.ts","label":"Voice v4"},"utils/v8":{"path":"utils/v8.ts","label":"Utils v8"},"utils/v9":{"path":"utils/v9.ts","label":"Utils v9"},"utils/v10":{"path":"utils/v10.ts","label":"Utils v10"}},"packagePath":"./","packageSlug":"discord-api-types","packageName":"discord-api-types","packageVersion":"0.37.80"}]

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
[
"0.37.74",
"0.37.73"
"0.37.80",
"0.37.79"
]