mirror of
https://github.com/discordjs/discord-api-types.git
synced 2026-05-23 03:40:17 +00:00
Compare commits
33 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c71258ceb4 | ||
|
|
a4cdbbfdf8 | ||
|
|
06fb47c51d | ||
|
|
cc47220e87 | ||
|
|
4defa9ea12 | ||
|
|
1290c942ab | ||
|
|
4309463634 | ||
|
|
1b8f62fc98 | ||
|
|
32ba5ce36c | ||
|
|
1598baf0c3 | ||
|
|
ceb2f033f7 | ||
|
|
36e3d156c6 | ||
|
|
a26629c0e8 | ||
|
|
018d889d9a | ||
|
|
1eb01618a3 | ||
|
|
31c8549fe3 | ||
|
|
729d4bf719 | ||
|
|
19beae59e0 | ||
|
|
d24e928051 | ||
|
|
27bebd978b | ||
|
|
b919e721bc | ||
|
|
138b9f2bf2 | ||
|
|
382fb0317c | ||
|
|
e095e09b0b | ||
|
|
9212ab8b99 | ||
|
|
460b72c518 | ||
|
|
52611242fb | ||
|
|
d2bb76574b | ||
|
|
1071d24362 | ||
|
|
ae8503f0e7 | ||
|
|
773556aa32 | ||
|
|
06ee56475c | ||
|
|
a1c26c2372 |
10
.github/CODEOWNERS
vendored
Normal file
10
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
* @vladfrangu
|
||||
|
||||
/*.ts @discordjs/discord-api-types @discordjs/core
|
||||
gateway/ @discordjs/discord-api-types @discordjs/core
|
||||
payloads/ @discordjs/discord-api-types @discordjs/core
|
||||
rest/ @discordjs/discord-api-types @discordjs/core
|
||||
rpc/ @discordjs/discord-api-types @discordjs/core
|
||||
tests/ @discordjs/discord-api-types @discordjs/core
|
||||
utils/ @discordjs/discord-api-types @discordjs/core
|
||||
voice/ @discordjs/discord-api-types @discordjs/core
|
||||
8
.github/auto_assign.yml
vendored
8
.github/auto_assign.yml
vendored
@@ -1,8 +0,0 @@
|
||||
addReviewers: true
|
||||
reviewers:
|
||||
- iCrawl
|
||||
- SpaceEEC
|
||||
- kyranet
|
||||
- vladfrangu
|
||||
numberOfReviewers: 0
|
||||
runOnDraft: true
|
||||
4
.github/workflows/pr-automation.yml
vendored
4
.github/workflows/pr-automation.yml
vendored
@@ -12,7 +12,3 @@ jobs:
|
||||
with:
|
||||
repo-token: '${{ secrets.GITHUB_TOKEN }}'
|
||||
sync-labels: true
|
||||
|
||||
- name: Automatically assign reviewers
|
||||
if: github.event.action == 'opened'
|
||||
uses: kentaro-m/auto-assign-action@v1.2.4
|
||||
|
||||
@@ -15,3 +15,6 @@ website/build
|
||||
*.js
|
||||
*.d.ts
|
||||
*.mjs
|
||||
|
||||
# Miscellaneous
|
||||
CODEOWNERS
|
||||
|
||||
64
CHANGELOG.md
64
CHANGELOG.md
@@ -1,3 +1,67 @@
|
||||
## [0.37.58](https://github.com/discordjs/discord-api-types/compare/0.37.57...0.37.58) (2023-09-25)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPatchAPIChannelJSONBody:** add missing `applied_tags` field ([#828](https://github.com/discordjs/discord-api-types/issues/828)) ([a4cdbbf](https://github.com/discordjs/discord-api-types/commit/a4cdbbfdf87f32e6108140260f163afeca3e0788))
|
||||
|
||||
### Features
|
||||
|
||||
- default select menu values ([#824](https://github.com/discordjs/discord-api-types/issues/824)) ([1290c94](https://github.com/discordjs/discord-api-types/commit/1290c942abdd8c2d9bf97aa2807f45073970f823))
|
||||
|
||||
## [0.37.57](https://github.com/discordjs/discord-api-types/compare/0.37.56...0.37.57) (2023-09-21)
|
||||
|
||||
### Features
|
||||
|
||||
- **ConnectionService:** support twitter rebrand update ([#819](https://github.com/discordjs/discord-api-types/issues/819)) ([32ba5ce](https://github.com/discordjs/discord-api-types/commit/32ba5ce36ce3b89293d540b06b74c2643ced7119))
|
||||
|
||||
## [0.37.56](https://github.com/discordjs/discord-api-types/compare/0.37.55...0.37.56) (2023-08-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPostAPIChannelMessageJSONBody:** `number` for attachment ids ([#811](https://github.com/discordjs/discord-api-types/issues/811)) ([1eb0161](https://github.com/discordjs/discord-api-types/commit/1eb01618a3d7421012b0423aea7a8bde032c08fc))
|
||||
- standard stickers are now free ([#789](https://github.com/discordjs/discord-api-types/issues/789)) ([018d889](https://github.com/discordjs/discord-api-types/commit/018d889d9aeb35b64dd914ade9ac93e8b98390ac))
|
||||
|
||||
### Features
|
||||
|
||||
- add support for teams update ([#813](https://github.com/discordjs/discord-api-types/issues/813)) ([a26629c](https://github.com/discordjs/discord-api-types/commit/a26629c0e83504299af4bc5eb85e101c63b9ced8))
|
||||
- **APIAuditLogOptions:** add `integration_type` ([#809](https://github.com/discordjs/discord-api-types/issues/809)) ([31c8549](https://github.com/discordjs/discord-api-types/commit/31c8549fe3e461ad120a3af434e27c61091bbb9c))
|
||||
|
||||
## [0.37.55](https://github.com/discordjs/discord-api-types/compare/0.37.54...0.37.55) (2023-08-24)
|
||||
|
||||
## [0.37.54](https://github.com/discordjs/discord-api-types/compare/0.37.53...0.37.54) (2023-08-17)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **Guild:** union with never type ([#797](https://github.com/discordjs/discord-api-types/issues/797)) ([b919e72](https://github.com/discordjs/discord-api-types/commit/b919e721bca4ff19340a40b58f6a20d34641bb05))
|
||||
|
||||
### Features
|
||||
|
||||
- Add Media channels ([#777](https://github.com/discordjs/discord-api-types/issues/777)) ([138b9f2](https://github.com/discordjs/discord-api-types/commit/138b9f2bf2fa7dcaada81de222543fa8a03bd52f))
|
||||
|
||||
## [0.37.53](https://github.com/discordjs/discord-api-types/compare/0.37.52...0.37.53) (2023-08-14)
|
||||
|
||||
### Features
|
||||
|
||||
- **GatewayActivityUpdateData:** allow sending state ([#801](https://github.com/discordjs/discord-api-types/issues/801)) ([e095e09](https://github.com/discordjs/discord-api-types/commit/e095e09b0b5e3c85107705de124858e1fbb29bf0))
|
||||
|
||||
## [0.37.52](https://github.com/discordjs/discord-api-types/compare/0.37.51...0.37.52) (2023-08-07)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPatchAPIChannelJSONBody:** `available_tags` requires `name` only ([#802](https://github.com/discordjs/discord-api-types/issues/802)) ([5261124](https://github.com/discordjs/discord-api-types/commit/52611242fb73ac56d8cfedd8953ce558bf6e842e))
|
||||
|
||||
## [0.37.51](https://github.com/discordjs/discord-api-types/compare/0.37.50...0.37.51) (2023-07-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **Presence:** cannot receive invisible status ([#799](https://github.com/discordjs/discord-api-types/issues/799)) ([1071d24](https://github.com/discordjs/discord-api-types/commit/1071d24362bbf1d39d528f73c3233f22aee99778))
|
||||
|
||||
## [0.37.50](https://github.com/discordjs/discord-api-types/compare/0.37.49...0.37.50) (2023-07-20)
|
||||
|
||||
### Features
|
||||
|
||||
- onboarding updates, mode field, and error codes ([#773](https://github.com/discordjs/discord-api-types/issues/773)) ([773556a](https://github.com/discordjs/discord-api-types/commit/773556aa329750839262874b4af6c4113d9906d3))
|
||||
|
||||
## [0.37.49](https://github.com/discordjs/discord-api-types/compare/0.37.48...0.37.49) (2023-07-17)
|
||||
|
||||
### Features
|
||||
|
||||
@@ -1,3 +1,67 @@
|
||||
## [0.37.58](https://github.com/discordjs/discord-api-types/compare/0.37.57...0.37.58) (2023-09-25)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPatchAPIChannelJSONBody:** add missing `applied_tags` field ([#828](https://github.com/discordjs/discord-api-types/issues/828)) ([a4cdbbf](https://github.com/discordjs/discord-api-types/commit/a4cdbbfdf87f32e6108140260f163afeca3e0788))
|
||||
|
||||
### Features
|
||||
|
||||
- default select menu values ([#824](https://github.com/discordjs/discord-api-types/issues/824)) ([1290c94](https://github.com/discordjs/discord-api-types/commit/1290c942abdd8c2d9bf97aa2807f45073970f823))
|
||||
|
||||
## [0.37.57](https://github.com/discordjs/discord-api-types/compare/0.37.56...0.37.57) (2023-09-21)
|
||||
|
||||
### Features
|
||||
|
||||
- **ConnectionService:** support twitter rebrand update ([#819](https://github.com/discordjs/discord-api-types/issues/819)) ([32ba5ce](https://github.com/discordjs/discord-api-types/commit/32ba5ce36ce3b89293d540b06b74c2643ced7119))
|
||||
|
||||
## [0.37.56](https://github.com/discordjs/discord-api-types/compare/0.37.55...0.37.56) (2023-08-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPostAPIChannelMessageJSONBody:** `number` for attachment ids ([#811](https://github.com/discordjs/discord-api-types/issues/811)) ([1eb0161](https://github.com/discordjs/discord-api-types/commit/1eb01618a3d7421012b0423aea7a8bde032c08fc))
|
||||
- standard stickers are now free ([#789](https://github.com/discordjs/discord-api-types/issues/789)) ([018d889](https://github.com/discordjs/discord-api-types/commit/018d889d9aeb35b64dd914ade9ac93e8b98390ac))
|
||||
|
||||
### Features
|
||||
|
||||
- add support for teams update ([#813](https://github.com/discordjs/discord-api-types/issues/813)) ([a26629c](https://github.com/discordjs/discord-api-types/commit/a26629c0e83504299af4bc5eb85e101c63b9ced8))
|
||||
- **APIAuditLogOptions:** add `integration_type` ([#809](https://github.com/discordjs/discord-api-types/issues/809)) ([31c8549](https://github.com/discordjs/discord-api-types/commit/31c8549fe3e461ad120a3af434e27c61091bbb9c))
|
||||
|
||||
## [0.37.55](https://github.com/discordjs/discord-api-types/compare/0.37.54...0.37.55) (2023-08-24)
|
||||
|
||||
## [0.37.54](https://github.com/discordjs/discord-api-types/compare/0.37.53...0.37.54) (2023-08-17)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **Guild:** union with never type ([#797](https://github.com/discordjs/discord-api-types/issues/797)) ([b919e72](https://github.com/discordjs/discord-api-types/commit/b919e721bca4ff19340a40b58f6a20d34641bb05))
|
||||
|
||||
### Features
|
||||
|
||||
- Add Media channels ([#777](https://github.com/discordjs/discord-api-types/issues/777)) ([138b9f2](https://github.com/discordjs/discord-api-types/commit/138b9f2bf2fa7dcaada81de222543fa8a03bd52f))
|
||||
|
||||
## [0.37.53](https://github.com/discordjs/discord-api-types/compare/0.37.52...0.37.53) (2023-08-14)
|
||||
|
||||
### Features
|
||||
|
||||
- **GatewayActivityUpdateData:** allow sending state ([#801](https://github.com/discordjs/discord-api-types/issues/801)) ([e095e09](https://github.com/discordjs/discord-api-types/commit/e095e09b0b5e3c85107705de124858e1fbb29bf0))
|
||||
|
||||
## [0.37.52](https://github.com/discordjs/discord-api-types/compare/0.37.51...0.37.52) (2023-08-07)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **RESTPatchAPIChannelJSONBody:** `available_tags` requires `name` only ([#802](https://github.com/discordjs/discord-api-types/issues/802)) ([5261124](https://github.com/discordjs/discord-api-types/commit/52611242fb73ac56d8cfedd8953ce558bf6e842e))
|
||||
|
||||
## [0.37.51](https://github.com/discordjs/discord-api-types/compare/0.37.50...0.37.51) (2023-07-31)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
- **Presence:** cannot receive invisible status ([#799](https://github.com/discordjs/discord-api-types/issues/799)) ([1071d24](https://github.com/discordjs/discord-api-types/commit/1071d24362bbf1d39d528f73c3233f22aee99778))
|
||||
|
||||
## [0.37.50](https://github.com/discordjs/discord-api-types/compare/0.37.49...0.37.50) (2023-07-20)
|
||||
|
||||
### Features
|
||||
|
||||
- onboarding updates, mode field, and error codes ([#773](https://github.com/discordjs/discord-api-types/issues/773)) ([773556a](https://github.com/discordjs/discord-api-types/commit/773556aa329750839262874b4af6c4113d9906d3))
|
||||
|
||||
## [0.37.49](https://github.com/discordjs/discord-api-types/compare/0.37.48...0.37.49) (2023-07-17)
|
||||
|
||||
### Features
|
||||
|
||||
@@ -1960,7 +1960,7 @@ export interface GatewayPresenceUpdateData {
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-structure
|
||||
*/
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'type' | 'url'>;
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'state' | 'type' | 'url'>;
|
||||
|
||||
// #endregion Sendable Payloads
|
||||
|
||||
|
||||
@@ -1959,7 +1959,7 @@ export interface GatewayPresenceUpdateData {
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-structure
|
||||
*/
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'type' | 'url'>;
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'state' | 'type' | 'url'>;
|
||||
|
||||
// #endregion Sendable Payloads
|
||||
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
import type { Permissions, Snowflake } from '../../../globals.ts';
|
||||
import type { APIRole, LocaleString } from '../../../v10.ts';
|
||||
import type { APIAttachment, APIChannel, APIMessage, APIPartialChannel, APIThreadMetadata } from '../channel.ts';
|
||||
import type {
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIMessage,
|
||||
APIPartialChannel,
|
||||
APIThreadChannel,
|
||||
ChannelType,
|
||||
ThreadChannelType,
|
||||
} from '../channel.ts';
|
||||
import type { APIGuildMember } from '../guild.ts';
|
||||
import type { APIUser } from '../user.ts';
|
||||
import type { InteractionType } from './responses.ts';
|
||||
@@ -136,14 +144,18 @@ export type APIGuildInteractionWrapper<Original extends APIBaseInteraction<Inter
|
||||
> &
|
||||
Required<Pick<Original, 'member' | 'guild_id'>>;
|
||||
|
||||
export interface APIInteractionDataResolvedChannelBase<T extends ChannelType> extends Required<APIPartialChannel> {
|
||||
type: T;
|
||||
permissions: Permissions;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object
|
||||
*/
|
||||
export interface APIInteractionDataResolvedChannel extends Required<APIPartialChannel> {
|
||||
thread_metadata?: APIThreadMetadata | null;
|
||||
permissions: Permissions;
|
||||
parent_id?: string | null;
|
||||
}
|
||||
export type APIInteractionDataResolvedChannel =
|
||||
| APIInteractionDataResolvedChannelBase<Exclude<ChannelType, ThreadChannelType>>
|
||||
| (APIInteractionDataResolvedChannelBase<ThreadChannelType> &
|
||||
Pick<APIThreadChannel, 'thread_metadata' | 'parent_id'>);
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-member-object
|
||||
|
||||
@@ -13,6 +13,7 @@ import type {
|
||||
import type { APIChannel, APIOverwrite } from './channel.ts';
|
||||
import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildIntegrationType,
|
||||
GuildDefaultMessageNotifications,
|
||||
GuildExplicitContentFilter,
|
||||
GuildMFALevel,
|
||||
@@ -312,6 +313,15 @@ export interface APIAuditLogOptions {
|
||||
* **Present only if the {@link APIAuditLogOptions#type entry type} is "0"**
|
||||
*/
|
||||
role_name?: string;
|
||||
|
||||
/**
|
||||
* Type of integration which performed the action
|
||||
*
|
||||
* Present from:
|
||||
* - MEMBER_KICK
|
||||
* - MEMBER_ROLE_UPDATE
|
||||
*/
|
||||
integration_type?: APIGuildIntegrationType;
|
||||
}
|
||||
|
||||
export enum AuditLogOptionsType {
|
||||
@@ -725,22 +735,22 @@ export type APIAuditLogChangeKeyAvailable = AuditLogChangeData<'available', bool
|
||||
*/
|
||||
export type APIAuditLogChangeKeyGuildId = AuditLogChangeData<'guild_id', Snowflake>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's archive status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyArchived = AuditLogChangeData<'archived', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's lock status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyLocked = AuditLogChangeData<'locked', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's auto archive duration is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyAutoArchiveDuration = AuditLogChangeData<'auto_archive_duration', number>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a channel's default auto archive duration for newly created threads is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyDefaultAutoArchiveDuration = AuditLogChangeData<
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIApplication } from './application.ts';
|
||||
import type { APIPartialEmoji } from './emoji.ts';
|
||||
import type { APIGuildMember } from './guild.ts';
|
||||
import type { APIMessageInteraction } from './interactions.ts';
|
||||
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
import type { APISticker, APIStickerItem } from './sticker.ts';
|
||||
import type { APIUser } from './user.ts';
|
||||
@@ -50,7 +50,8 @@ export type TextChannelType =
|
||||
| ChannelType.GuildText
|
||||
| ChannelType.GuildForum
|
||||
| ChannelType.GuildVoice
|
||||
| ChannelType.GuildStageVoice;
|
||||
| ChannelType.GuildStageVoice
|
||||
| ChannelType.GuildMedia;
|
||||
|
||||
export type GuildChannelType = Exclude<ChannelType, ChannelType.DM | ChannelType.GroupDM>;
|
||||
|
||||
@@ -124,7 +125,7 @@ export interface APIGuildTextChannel<T extends GuildTextChannelType>
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number;
|
||||
/**
|
||||
* The channel topic (0-4096 characters for forum channels, 0-1024 characters for all others)
|
||||
* The channel topic (0-4096 characters for thread-only channels, 0-1024 characters for all others)
|
||||
*/
|
||||
topic?: string | null;
|
||||
}
|
||||
@@ -205,12 +206,11 @@ export interface APIGroupDMChannel extends Omit<APIDMChannelBase<ChannelType.Gro
|
||||
managed?: boolean;
|
||||
}
|
||||
|
||||
export type ThreadChannelType = ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread;
|
||||
|
||||
export interface APIThreadChannel
|
||||
extends Omit<
|
||||
APITextBasedChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread>,
|
||||
'name'
|
||||
>,
|
||||
APIGuildChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread> {
|
||||
extends Omit<APITextBasedChannel<ThreadChannelType>, 'name'>,
|
||||
APIGuildChannel<ThreadChannelType> {
|
||||
/**
|
||||
* The client users member for the thread, only included in select endpoints
|
||||
*/
|
||||
@@ -240,7 +240,7 @@ export interface APIThreadChannel
|
||||
*/
|
||||
total_message_sent?: number;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel
|
||||
* The IDs of the set of tags that have been applied to a thread in a thread-only channel
|
||||
*/
|
||||
applied_tags: Snowflake[];
|
||||
}
|
||||
@@ -317,25 +317,31 @@ export enum ForumLayoutType {
|
||||
GalleryView,
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIGuildTextChannel<ChannelType.GuildForum> {
|
||||
export interface APIThreadOnlyChannel<T extends ChannelType.GuildForum | ChannelType.GuildMedia>
|
||||
extends APIGuildTextChannel<T> {
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel
|
||||
* The set of tags that can be used in a thread-only channel
|
||||
*/
|
||||
available_tags: APIGuildForumTag[];
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*/
|
||||
default_reaction_emoji: APIGuildForumDefaultReactionEmoji | null;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*/
|
||||
default_sort_order: SortOrderType | null;
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIThreadOnlyChannel<ChannelType.GuildForum> {
|
||||
/**
|
||||
* The default layout type used to display posts in a forum channel. Defaults to `0`, which indicates a layout view has not been set by a channel admin
|
||||
*/
|
||||
default_forum_layout: ForumLayoutType;
|
||||
}
|
||||
|
||||
export type APIGuildMediaChannel = APIThreadOnlyChannel<ChannelType.GuildMedia>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-structure
|
||||
*/
|
||||
@@ -348,7 +354,8 @@ export type APIChannel =
|
||||
| APIGuildStageVoiceChannel
|
||||
| APIGuildCategoryChannel
|
||||
| APIThreadChannel
|
||||
| APIGuildForumChannel;
|
||||
| APIGuildForumChannel
|
||||
| APIGuildMediaChannel;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-types
|
||||
@@ -410,6 +417,12 @@ export enum ChannelType {
|
||||
* A channel that can only contain threads
|
||||
*/
|
||||
GuildForum,
|
||||
/**
|
||||
* A channel like forum channels but contains media for server subscriptions
|
||||
*
|
||||
* See https://creator-support.discord.com/hc/articles/14346342766743
|
||||
*/
|
||||
GuildMedia,
|
||||
|
||||
// EVERYTHING BELOW THIS LINE SHOULD BE OLD NAMES FOR RENAMED ENUM MEMBERS //
|
||||
|
||||
@@ -665,11 +678,16 @@ export interface APIMessage {
|
||||
* It can be used to estimate the relative position of the message in a thread in company with `total_message_sent` on parent thread
|
||||
*/
|
||||
position?: number;
|
||||
|
||||
/**
|
||||
* Data of the role subscription purchase or renewal that prompted this `ROLE_SUBSCRIPTION_PURCHASE` message
|
||||
*/
|
||||
role_subscription_data?: APIMessageRoleSubscriptionData;
|
||||
/**
|
||||
* Data for users, members, channels, and roles in the message's auto-populated select menus
|
||||
*
|
||||
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
|
||||
*/
|
||||
resolved?: APIInteractionDataResolved;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1598,6 +1616,20 @@ export interface APIBaseSelectMenuComponent<
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface APIBaseAutoPopulatedSelectMenuComponent<
|
||||
T extends
|
||||
| ComponentType.UserSelect
|
||||
| ComponentType.RoleSelect
|
||||
| ComponentType.MentionableSelect
|
||||
| ComponentType.ChannelSelect,
|
||||
D extends SelectMenuDefaultValueType,
|
||||
> extends APIBaseSelectMenuComponent<T> {
|
||||
/**
|
||||
* List of default values for auto-populated select menu components
|
||||
*/
|
||||
default_values?: APISelectMenuDefaultValue<D>[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1611,28 +1643,61 @@ export interface APIStringSelectComponent extends APIBaseSelectMenuComponent<Com
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIUserSelectComponent = APIBaseSelectMenuComponent<ComponentType.UserSelect>;
|
||||
export type APIUserSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.UserSelect,
|
||||
SelectMenuDefaultValueType.User
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIRoleSelectComponent = APIBaseSelectMenuComponent<ComponentType.RoleSelect>;
|
||||
export type APIRoleSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.RoleSelect,
|
||||
SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIMentionableSelectComponent = APIBaseSelectMenuComponent<ComponentType.MentionableSelect>;
|
||||
export type APIMentionableSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.MentionableSelect,
|
||||
SelectMenuDefaultValueType.User | SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export interface APIChannelSelectComponent extends APIBaseSelectMenuComponent<ComponentType.ChannelSelect> {
|
||||
export interface APIChannelSelectComponent
|
||||
extends APIBaseAutoPopulatedSelectMenuComponent<ComponentType.ChannelSelect, SelectMenuDefaultValueType.Channel> {
|
||||
/**
|
||||
* List of channel types to include in the ChannelSelect component
|
||||
*/
|
||||
channel_types?: ChannelType[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export enum SelectMenuDefaultValueType {
|
||||
Channel = 'channel',
|
||||
Role = 'role',
|
||||
User = 'user',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export interface APISelectMenuDefaultValue<T extends SelectMenuDefaultValueType> {
|
||||
type: T;
|
||||
id: Snowflake;
|
||||
}
|
||||
|
||||
export type APIAutoPopulatedSelectMenuComponent =
|
||||
| APIChannelSelectComponent
|
||||
| APIMentionableSelectComponent
|
||||
| APIRoleSelectComponent
|
||||
| APIUserSelectComponent;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1744,6 +1809,10 @@ export enum ChannelFlags {
|
||||
* @unstable This channel flag is currently not documented by Discord but has a known value which we will try to keep up to date.
|
||||
*/
|
||||
IsScheduledForDeletion = 1 << 9,
|
||||
/**
|
||||
* Whether media download options are hidden.
|
||||
*/
|
||||
HideMediaDownloadOptions = 1 << 15,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -79,7 +79,7 @@ export interface GatewayPresenceUpdate {
|
||||
/**
|
||||
* Either "idle", "dnd", "online", or "offline"
|
||||
*/
|
||||
status?: PresenceUpdateStatus;
|
||||
status?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* User's current activities
|
||||
*
|
||||
@@ -94,6 +94,9 @@ export interface GatewayPresenceUpdate {
|
||||
client_status?: GatewayPresenceClientStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#update-presence-status-types
|
||||
*/
|
||||
export enum PresenceUpdateStatus {
|
||||
Online = 'online',
|
||||
DoNotDisturb = 'dnd',
|
||||
@@ -105,6 +108,8 @@ export enum PresenceUpdateStatus {
|
||||
Offline = 'offline',
|
||||
}
|
||||
|
||||
export type PresenceUpdateReceiveStatus = Exclude<PresenceUpdateStatus, PresenceUpdateStatus.Invisible>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#client-status-object
|
||||
*/
|
||||
@@ -112,15 +117,15 @@ export interface GatewayPresenceClientStatus {
|
||||
/**
|
||||
* The user's status set for an active desktop (Windows, Linux, Mac) application session
|
||||
*/
|
||||
desktop?: PresenceUpdateStatus;
|
||||
desktop?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active mobile (iOS, Android) application session
|
||||
*/
|
||||
mobile?: PresenceUpdateStatus;
|
||||
mobile?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active web (browser, bot account) application session
|
||||
*/
|
||||
web?: PresenceUpdateStatus;
|
||||
web?: PresenceUpdateReceiveStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -176,7 +181,7 @@ export interface GatewayActivity {
|
||||
*/
|
||||
details?: string | null;
|
||||
/**
|
||||
* The user's current party status
|
||||
* The user's current party status, or the text used for a custom status
|
||||
*/
|
||||
state?: string | null;
|
||||
/**
|
||||
@@ -261,7 +266,7 @@ export enum ActivityType {
|
||||
*/
|
||||
Watching,
|
||||
/**
|
||||
* {emoji} {details}
|
||||
* {emoji} {state}
|
||||
*/
|
||||
Custom,
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji.ts';
|
||||
import type { PresenceUpdateStatus } from './gateway.ts';
|
||||
import type { PresenceUpdateReceiveStatus } from './gateway.ts';
|
||||
import type { OAuth2Scopes } from './oauth2.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
import type { APISticker } from './sticker.ts';
|
||||
@@ -427,7 +427,7 @@ export enum GuildFeature {
|
||||
* Guild has enabled the role subscription promo page
|
||||
*/
|
||||
CreatorStorePage = 'CREATOR_STORE_PAGE',
|
||||
/*
|
||||
/**
|
||||
* Guild has been set as a support server on the App Directory
|
||||
*/
|
||||
DeveloperSupportServer = 'DEVELOPER_SUPPORT_SERVER',
|
||||
@@ -903,7 +903,7 @@ export interface APIGuildWidgetMember {
|
||||
username: string;
|
||||
discriminator: string;
|
||||
avatar: string | null;
|
||||
status: PresenceUpdateStatus;
|
||||
status: PresenceUpdateReceiveStatus;
|
||||
activity?: { name: string };
|
||||
avatar_url: string;
|
||||
}
|
||||
@@ -1028,6 +1028,10 @@ export interface APIGuildOnboarding {
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
/**
|
||||
* Current mode of onboarding
|
||||
*/
|
||||
mode: GuildOnboardingMode;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1095,6 +1099,20 @@ export interface APIGuildOnboardingPromptOption {
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
|
||||
*/
|
||||
export enum GuildOnboardingMode {
|
||||
/**
|
||||
* Counts only Default Channels towards constraints
|
||||
*/
|
||||
OnboardingDefault,
|
||||
/**
|
||||
* Counts Default Channels and Questions towards constraints
|
||||
*/
|
||||
OnboardingAdvanced,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
|
||||
@@ -90,6 +90,9 @@ export interface APIRoleTags {
|
||||
guild_connections?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/permissions#role-object-role-flags
|
||||
*/
|
||||
export enum RoleFlags {
|
||||
/**
|
||||
* Role can be selected by members in an onboarding prompt
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface APISticker {
|
||||
*/
|
||||
export enum StickerType {
|
||||
/**
|
||||
* An official sticker in a pack, part of Nitro or in a removed purchasable pack
|
||||
* An official sticker in a pack
|
||||
*/
|
||||
Standard = 1,
|
||||
/**
|
||||
|
||||
@@ -43,6 +43,8 @@ export interface APITeamMember {
|
||||
membership_state: TeamMemberMembershipState;
|
||||
/**
|
||||
* Will always be `["*"]`
|
||||
*
|
||||
* @deprecated Use `role` instead
|
||||
*/
|
||||
permissions: ['*'];
|
||||
/**
|
||||
@@ -55,6 +57,12 @@ export interface APITeamMember {
|
||||
* See https://discord.com/developers/docs/resources/user#user-object
|
||||
*/
|
||||
user: APIUser;
|
||||
/**
|
||||
* The user's role in the team.
|
||||
*
|
||||
* See https://discord.com/developers/docs/topics/teams#team-member-roles
|
||||
*/
|
||||
role: TeamMemberRole;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -64,3 +72,12 @@ export enum TeamMemberMembershipState {
|
||||
Invited = 1,
|
||||
Accepted,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/teams#team-member-roles-team-member-role-types
|
||||
*/
|
||||
export enum TeamMemberRole {
|
||||
Admin = 'admin',
|
||||
Developer = 'developer',
|
||||
ReadOnly = 'read_only',
|
||||
}
|
||||
|
||||
@@ -281,7 +281,11 @@ export enum ConnectionService {
|
||||
Steam = 'steam',
|
||||
TikTok = 'tiktok',
|
||||
Twitch = 'twitch',
|
||||
Twitter = 'twitter',
|
||||
X = 'twitter',
|
||||
/**
|
||||
* @deprecated This is the old name for {@apilink ConnectionService#X}
|
||||
*/
|
||||
Twitter = X,
|
||||
Xbox = 'xbox',
|
||||
YouTube = 'youtube',
|
||||
}
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
import type { Permissions, Snowflake } from '../../../globals.ts';
|
||||
import type { APIRole, LocaleString } from '../../../v9.ts';
|
||||
import type { APIAttachment, APIChannel, APIMessage, APIPartialChannel, APIThreadMetadata } from '../channel.ts';
|
||||
import type {
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIMessage,
|
||||
APIPartialChannel,
|
||||
APIThreadChannel,
|
||||
ChannelType,
|
||||
ThreadChannelType,
|
||||
} from '../channel.ts';
|
||||
import type { APIGuildMember } from '../guild.ts';
|
||||
import type { APIUser } from '../user.ts';
|
||||
import type { InteractionType } from './responses.ts';
|
||||
@@ -136,14 +144,18 @@ export type APIGuildInteractionWrapper<Original extends APIBaseInteraction<Inter
|
||||
> &
|
||||
Required<Pick<Original, 'member' | 'guild_id'>>;
|
||||
|
||||
export interface APIInteractionDataResolvedChannelBase<T extends ChannelType> extends Required<APIPartialChannel> {
|
||||
type: T;
|
||||
permissions: Permissions;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object
|
||||
*/
|
||||
export interface APIInteractionDataResolvedChannel extends Required<APIPartialChannel> {
|
||||
thread_metadata?: APIThreadMetadata | null;
|
||||
permissions: Permissions;
|
||||
parent_id?: string | null;
|
||||
}
|
||||
export type APIInteractionDataResolvedChannel =
|
||||
| APIInteractionDataResolvedChannelBase<Exclude<ChannelType, ThreadChannelType>>
|
||||
| (APIInteractionDataResolvedChannelBase<ThreadChannelType> &
|
||||
Pick<APIThreadChannel, 'thread_metadata' | 'parent_id'>);
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-member-object
|
||||
|
||||
@@ -13,6 +13,7 @@ import type {
|
||||
import type { APIChannel, APIOverwrite } from './channel.ts';
|
||||
import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildIntegrationType,
|
||||
GuildDefaultMessageNotifications,
|
||||
GuildExplicitContentFilter,
|
||||
GuildMFALevel,
|
||||
@@ -312,6 +313,15 @@ export interface APIAuditLogOptions {
|
||||
* **Present only if the {@link APIAuditLogOptions#type entry type} is "0"**
|
||||
*/
|
||||
role_name?: string;
|
||||
|
||||
/**
|
||||
* Type of integration which performed the action
|
||||
*
|
||||
* Present from:
|
||||
* - MEMBER_KICK
|
||||
* - MEMBER_ROLE_UPDATE
|
||||
*/
|
||||
integration_type?: APIGuildIntegrationType;
|
||||
}
|
||||
|
||||
export enum AuditLogOptionsType {
|
||||
@@ -725,22 +735,22 @@ export type APIAuditLogChangeKeyAvailable = AuditLogChangeData<'available', bool
|
||||
*/
|
||||
export type APIAuditLogChangeKeyGuildId = AuditLogChangeData<'guild_id', Snowflake>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's archive status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyArchived = AuditLogChangeData<'archived', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's lock status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyLocked = AuditLogChangeData<'locked', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's auto archive duration is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyAutoArchiveDuration = AuditLogChangeData<'auto_archive_duration', number>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a channel's default auto archive duration for newly created threads is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyDefaultAutoArchiveDuration = AuditLogChangeData<
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIApplication } from './application.ts';
|
||||
import type { APIPartialEmoji } from './emoji.ts';
|
||||
import type { APIGuildMember } from './guild.ts';
|
||||
import type { APIMessageInteraction } from './interactions.ts';
|
||||
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
import type { APISticker, APIStickerItem } from './sticker.ts';
|
||||
import type { APIUser } from './user.ts';
|
||||
@@ -50,7 +50,8 @@ export type TextChannelType =
|
||||
| ChannelType.GuildText
|
||||
| ChannelType.GuildForum
|
||||
| ChannelType.GuildVoice
|
||||
| ChannelType.GuildStageVoice;
|
||||
| ChannelType.GuildStageVoice
|
||||
| ChannelType.GuildMedia;
|
||||
|
||||
export type GuildChannelType = Exclude<ChannelType, ChannelType.DM | ChannelType.GroupDM>;
|
||||
|
||||
@@ -124,7 +125,7 @@ export interface APIGuildTextChannel<T extends GuildTextChannelType>
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number;
|
||||
/**
|
||||
* The channel topic (0-1024 characters)
|
||||
* The channel topic (0-4096 characters for thread-only channels, 0-1024 characters for all others)
|
||||
*/
|
||||
topic?: string | null;
|
||||
}
|
||||
@@ -201,12 +202,11 @@ export interface APIGroupDMChannel extends Omit<APIDMChannelBase<ChannelType.Gro
|
||||
managed?: boolean;
|
||||
}
|
||||
|
||||
export type ThreadChannelType = ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread;
|
||||
|
||||
export interface APIThreadChannel
|
||||
extends Omit<
|
||||
APITextBasedChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread>,
|
||||
'name'
|
||||
>,
|
||||
APIGuildChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread> {
|
||||
extends Omit<APITextBasedChannel<ThreadChannelType>, 'name'>,
|
||||
APIGuildChannel<ThreadChannelType> {
|
||||
/**
|
||||
* The client users member for the thread, only included in select endpoints
|
||||
*/
|
||||
@@ -236,7 +236,7 @@ export interface APIThreadChannel
|
||||
*/
|
||||
total_message_sent?: number;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel
|
||||
* The IDs of the set of tags that have been applied to a thread in a thread-only channel
|
||||
*/
|
||||
applied_tags: Snowflake[];
|
||||
}
|
||||
@@ -313,25 +313,31 @@ export enum ForumLayoutType {
|
||||
GalleryView,
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIGuildTextChannel<ChannelType.GuildForum> {
|
||||
export interface APIThreadOnlyChannel<T extends ChannelType.GuildForum | ChannelType.GuildMedia>
|
||||
extends APIGuildTextChannel<T> {
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel
|
||||
* The set of tags that can be used in a thread-only channel
|
||||
*/
|
||||
available_tags: APIGuildForumTag[];
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*/
|
||||
default_reaction_emoji: APIGuildForumDefaultReactionEmoji | null;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*/
|
||||
default_sort_order: SortOrderType | null;
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIThreadOnlyChannel<ChannelType.GuildForum> {
|
||||
/**
|
||||
* The default layout type used to display posts in a forum channel. Defaults to `0`, which indicates a layout view has not been set by a channel admin
|
||||
*/
|
||||
default_forum_layout: ForumLayoutType;
|
||||
}
|
||||
|
||||
export type APIGuildMediaChannel = APIThreadOnlyChannel<ChannelType.GuildMedia>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-structure
|
||||
*/
|
||||
@@ -344,7 +350,8 @@ export type APIChannel =
|
||||
| APIGuildStageVoiceChannel
|
||||
| APIGuildCategoryChannel
|
||||
| APIThreadChannel
|
||||
| APIGuildForumChannel;
|
||||
| APIGuildForumChannel
|
||||
| APIGuildMediaChannel;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-types
|
||||
@@ -406,6 +413,12 @@ export enum ChannelType {
|
||||
* A channel that can only contain threads
|
||||
*/
|
||||
GuildForum,
|
||||
/**
|
||||
* A channel like forum channels but contains media for server subscriptions
|
||||
*
|
||||
* See https://creator-support.discord.com/hc/articles/14346342766743
|
||||
*/
|
||||
GuildMedia,
|
||||
|
||||
// EVERYTHING BELOW THIS LINE SHOULD BE OLD NAMES FOR RENAMED ENUM MEMBERS
|
||||
/**
|
||||
@@ -656,6 +669,12 @@ export interface APIMessage {
|
||||
* It can be used to estimate the relative position of the message in a thread in company with `total_message_sent` on parent thread
|
||||
*/
|
||||
position?: number;
|
||||
/**
|
||||
* Data for users, members, channels, and roles in the message's auto-populated select menus
|
||||
*
|
||||
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
|
||||
*/
|
||||
resolved?: APIInteractionDataResolved;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1566,6 +1585,20 @@ export interface APIBaseSelectMenuComponent<
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface APIBaseAutoPopulatedSelectMenuComponent<
|
||||
T extends
|
||||
| ComponentType.UserSelect
|
||||
| ComponentType.RoleSelect
|
||||
| ComponentType.MentionableSelect
|
||||
| ComponentType.ChannelSelect,
|
||||
D extends SelectMenuDefaultValueType,
|
||||
> extends APIBaseSelectMenuComponent<T> {
|
||||
/**
|
||||
* List of default values for auto-populated select menu components
|
||||
*/
|
||||
default_values?: APISelectMenuDefaultValue<D>[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1579,28 +1612,61 @@ export interface APIStringSelectComponent extends APIBaseSelectMenuComponent<Com
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIUserSelectComponent = APIBaseSelectMenuComponent<ComponentType.UserSelect>;
|
||||
export type APIUserSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.UserSelect,
|
||||
SelectMenuDefaultValueType.User
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIRoleSelectComponent = APIBaseSelectMenuComponent<ComponentType.RoleSelect>;
|
||||
export type APIRoleSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.RoleSelect,
|
||||
SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIMentionableSelectComponent = APIBaseSelectMenuComponent<ComponentType.MentionableSelect>;
|
||||
export type APIMentionableSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.MentionableSelect,
|
||||
SelectMenuDefaultValueType.User | SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export interface APIChannelSelectComponent extends APIBaseSelectMenuComponent<ComponentType.ChannelSelect> {
|
||||
export interface APIChannelSelectComponent
|
||||
extends APIBaseAutoPopulatedSelectMenuComponent<ComponentType.ChannelSelect, SelectMenuDefaultValueType.Channel> {
|
||||
/**
|
||||
* List of channel types to include in the ChannelSelect component
|
||||
*/
|
||||
channel_types?: ChannelType[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export enum SelectMenuDefaultValueType {
|
||||
Channel = 'channel',
|
||||
Role = 'role',
|
||||
User = 'user',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export interface APISelectMenuDefaultValue<T extends SelectMenuDefaultValueType> {
|
||||
type: T;
|
||||
id: Snowflake;
|
||||
}
|
||||
|
||||
export type APIAutoPopulatedSelectMenuComponent =
|
||||
| APIChannelSelectComponent
|
||||
| APIMentionableSelectComponent
|
||||
| APIRoleSelectComponent
|
||||
| APIUserSelectComponent;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1712,6 +1778,10 @@ export enum ChannelFlags {
|
||||
* @unstable This channel flag is currently not documented by Discord but has a known value which we will try to keep up to date.
|
||||
*/
|
||||
IsScheduledForDeletion = 1 << 9,
|
||||
/**
|
||||
* Whether media download options are hidden.
|
||||
*/
|
||||
HideMediaDownloadOptions = 1 << 15,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -79,7 +79,7 @@ export interface GatewayPresenceUpdate {
|
||||
/**
|
||||
* Either "idle", "dnd", "online", or "offline"
|
||||
*/
|
||||
status?: PresenceUpdateStatus;
|
||||
status?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* User's current activities
|
||||
*
|
||||
@@ -94,6 +94,9 @@ export interface GatewayPresenceUpdate {
|
||||
client_status?: GatewayPresenceClientStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#update-presence-status-types
|
||||
*/
|
||||
export enum PresenceUpdateStatus {
|
||||
Online = 'online',
|
||||
DoNotDisturb = 'dnd',
|
||||
@@ -105,6 +108,8 @@ export enum PresenceUpdateStatus {
|
||||
Offline = 'offline',
|
||||
}
|
||||
|
||||
export type PresenceUpdateReceiveStatus = Exclude<PresenceUpdateStatus, PresenceUpdateStatus.Invisible>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#client-status-object
|
||||
*/
|
||||
@@ -112,15 +117,15 @@ export interface GatewayPresenceClientStatus {
|
||||
/**
|
||||
* The user's status set for an active desktop (Windows, Linux, Mac) application session
|
||||
*/
|
||||
desktop?: PresenceUpdateStatus;
|
||||
desktop?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active mobile (iOS, Android) application session
|
||||
*/
|
||||
mobile?: PresenceUpdateStatus;
|
||||
mobile?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active web (browser, bot account) application session
|
||||
*/
|
||||
web?: PresenceUpdateStatus;
|
||||
web?: PresenceUpdateReceiveStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,7 +172,7 @@ export interface GatewayActivity {
|
||||
*/
|
||||
details?: string | null;
|
||||
/**
|
||||
* The user's current party status
|
||||
* The user's current party status, or the text used for a custom status
|
||||
*/
|
||||
state?: string | null;
|
||||
/**
|
||||
@@ -249,7 +254,7 @@ export enum ActivityType {
|
||||
*/
|
||||
Watching,
|
||||
/**
|
||||
* {emoji} {details}
|
||||
* {emoji} {state}
|
||||
*/
|
||||
Custom,
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji.ts';
|
||||
import type { PresenceUpdateStatus } from './gateway.ts';
|
||||
import type { PresenceUpdateReceiveStatus } from './gateway.ts';
|
||||
import type { OAuth2Scopes } from './oauth2.ts';
|
||||
import type { APIRole } from './permissions.ts';
|
||||
import type { APISticker } from './sticker.ts';
|
||||
@@ -419,7 +419,7 @@ export enum GuildFeature {
|
||||
* Guild has enabled the role subscription promo page
|
||||
*/
|
||||
CreatorStorePage = 'CREATOR_STORE_PAGE',
|
||||
/*
|
||||
/**
|
||||
* Guild has been set as a support server on the App Directory
|
||||
*/
|
||||
DeveloperSupportServer = 'DEVELOPER_SUPPORT_SERVER',
|
||||
@@ -895,7 +895,7 @@ export interface APIGuildWidgetMember {
|
||||
username: string;
|
||||
discriminator: string;
|
||||
avatar: string | null;
|
||||
status: PresenceUpdateStatus;
|
||||
status: PresenceUpdateReceiveStatus;
|
||||
activity?: { name: string };
|
||||
avatar_url: string;
|
||||
}
|
||||
@@ -1020,6 +1020,10 @@ export interface APIGuildOnboarding {
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
/**
|
||||
* Current mode of onboarding
|
||||
*/
|
||||
mode: GuildOnboardingMode;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1087,6 +1091,20 @@ export interface APIGuildOnboardingPromptOption {
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
|
||||
*/
|
||||
export enum GuildOnboardingMode {
|
||||
/**
|
||||
* Counts only Default Channels towards constraints
|
||||
*/
|
||||
OnboardingDefault,
|
||||
/**
|
||||
* Counts Default Channels and Questions towards constraints
|
||||
*/
|
||||
OnboardingAdvanced,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
|
||||
@@ -90,6 +90,9 @@ export interface APIRoleTags {
|
||||
guild_connections?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/permissions#role-object-role-flags
|
||||
*/
|
||||
export enum RoleFlags {
|
||||
/**
|
||||
* Role can be selected by members in an onboarding prompt
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface APISticker {
|
||||
*/
|
||||
export enum StickerType {
|
||||
/**
|
||||
* An official sticker in a pack, part of Nitro or in a removed purchasable pack
|
||||
* An official sticker in a pack
|
||||
*/
|
||||
Standard = 1,
|
||||
/**
|
||||
|
||||
@@ -43,6 +43,8 @@ export interface APITeamMember {
|
||||
membership_state: TeamMemberMembershipState;
|
||||
/**
|
||||
* Will always be `["*"]`
|
||||
*
|
||||
* @deprecated Use `role` instead
|
||||
*/
|
||||
permissions: ['*'];
|
||||
/**
|
||||
@@ -55,6 +57,12 @@ export interface APITeamMember {
|
||||
* See https://discord.com/developers/docs/resources/user#user-object
|
||||
*/
|
||||
user: APIUser;
|
||||
/**
|
||||
* The user's role in the team.
|
||||
*
|
||||
* See https://discord.com/developers/docs/topics/teams#team-member-roles
|
||||
*/
|
||||
role: TeamMemberRole;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -64,3 +72,12 @@ export enum TeamMemberMembershipState {
|
||||
Invited = 1,
|
||||
Accepted,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/teams#team-member-roles-team-member-role-types
|
||||
*/
|
||||
export enum TeamMemberRole {
|
||||
Admin = 'admin',
|
||||
Developer = 'developer',
|
||||
ReadOnly = 'read_only',
|
||||
}
|
||||
|
||||
@@ -281,7 +281,11 @@ export enum ConnectionService {
|
||||
Steam = 'steam',
|
||||
TikTok = 'tiktok',
|
||||
Twitch = 'twitch',
|
||||
Twitter = 'twitter',
|
||||
X = 'twitter',
|
||||
/**
|
||||
* @deprecated This is the old name for {@apilink ConnectionService#X}
|
||||
*/
|
||||
Twitter = X,
|
||||
Xbox = 'xbox',
|
||||
YouTube = 'youtube',
|
||||
}
|
||||
|
||||
@@ -285,6 +285,9 @@ export enum RESTJSONErrorCodes {
|
||||
WebhookServicesCannotBeUsedInForumChannels,
|
||||
|
||||
MessageBlockedByHarmfulLinksFilter = 240_000,
|
||||
|
||||
CannotEnableOnboardingRequirementsAreNotMet = 350_000,
|
||||
CannotUpdateOnboardingWhileBelowRequirements,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,6 @@ import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type {
|
||||
APIActionRowComponent,
|
||||
APIAllowedMentions,
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIEmbed,
|
||||
APIExtendedInvite,
|
||||
@@ -18,11 +17,13 @@ import type {
|
||||
MessageFlags,
|
||||
OverwriteType,
|
||||
ThreadAutoArchiveDuration,
|
||||
ThreadChannelType,
|
||||
VideoQualityMode,
|
||||
APIGuildForumTag,
|
||||
APIGuildForumDefaultReactionEmoji,
|
||||
SortOrderType,
|
||||
ForumLayoutType,
|
||||
ChannelFlags,
|
||||
} from '../../payloads/v10/mod.ts';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals.ts';
|
||||
|
||||
@@ -60,15 +61,15 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
position?: number | null | undefined;
|
||||
/**
|
||||
* 0-1024 character channel topic (0-4096 characters for forum channels)
|
||||
* 0-1024 character channel topic (0-4096 characters for thread-only channels)
|
||||
*
|
||||
* Channel types: text, news, forum
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
topic?: string | null | undefined;
|
||||
/**
|
||||
* Whether the channel is nsfw
|
||||
*
|
||||
* Channel types: text, voice, news, forum
|
||||
* Channel types: text, voice, news, forum, media
|
||||
*/
|
||||
nsfw?: boolean | null | undefined;
|
||||
/**
|
||||
@@ -76,7 +77,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* bots, as well as users with the permission `MANAGE_MESSAGES` or `MANAGE_CHANNELS`,
|
||||
* are unaffected
|
||||
*
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum, media
|
||||
*/
|
||||
rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
@@ -100,7 +101,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* ID of the new parent category for a channel
|
||||
*
|
||||
* Channel types: text, voice, news
|
||||
* Channel types: text, voice, news, stage, forum, media
|
||||
*/
|
||||
parent_id?: Snowflake | null | undefined;
|
||||
/**
|
||||
@@ -136,9 +137,19 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity
|
||||
*
|
||||
* Channel types: text, news
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
default_auto_archive_duration?: ThreadAutoArchiveDuration | undefined;
|
||||
/**
|
||||
* Channel flags combined as a bit field.
|
||||
*/
|
||||
flags?: ChannelFlags | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a thread-only channel; limited to 20
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
available_tags?: (Partial<APIGuildForumTag> & Pick<APIGuildForumTag, 'name'>)[] | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread
|
||||
*
|
||||
@@ -146,28 +157,22 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
invitable?: boolean | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel; limited to 20
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
*/
|
||||
available_tags?: APIGuildForumTag[] | undefined;
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_reaction_emoji?: APIGuildForumDefaultReactionEmoji | undefined;
|
||||
/**
|
||||
* The initial `rate_limit_per_user` to set on newly created threads in a channel.
|
||||
* This field is copied to the thread at creation time and does not live update
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: text, forum, media
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_sort_order?: SortOrderType | null | undefined;
|
||||
/**
|
||||
@@ -176,6 +181,12 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* Channel types: forum
|
||||
*/
|
||||
default_forum_layout?: ForumLayoutType | undefined;
|
||||
/**
|
||||
* The ids of the set of tags that have been applied to a thread-only channel; limited to 5
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -235,6 +246,24 @@ export type APIMessageReferenceSend = StrictPartial<APIMessageReference> &
|
||||
fail_if_not_exists?: boolean | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
export interface RESTAPIAttachment {
|
||||
/**
|
||||
* Attachment id or a number that matches `n` in `files[n]`
|
||||
*/
|
||||
id: Snowflake | number;
|
||||
/**
|
||||
* Name of the file
|
||||
*/
|
||||
filename?: string | undefined;
|
||||
/**
|
||||
* Description of the file
|
||||
*/
|
||||
description?: string | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#create-message
|
||||
*/
|
||||
@@ -284,7 +313,7 @@ export interface RESTPostAPIChannelMessageJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -328,7 +357,7 @@ export type RESTDeleteAPIChannelMessageOwnReaction = never;
|
||||
*/
|
||||
export type RESTDeleteAPIChannelMessageUserReactionResult = never;
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#get-reactions
|
||||
*/
|
||||
export interface RESTGetAPIChannelMessageReactionUsersQuery {
|
||||
@@ -395,7 +424,7 @@ export interface RESTPatchAPIChannelMessageJSONBody {
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* The components to include with the message
|
||||
*
|
||||
@@ -614,25 +643,25 @@ export interface RESTPostAPIChannelMessagesThreadsJSONBody {
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsJSONBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: RESTPostAPIChannelMessageJSONBody;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel; limited to 5
|
||||
* The IDs of the set of tags to apply to the thread; limited to 5
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsFormDataBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: string;
|
||||
};
|
||||
@@ -656,7 +685,7 @@ export interface RESTPostAPIChannelThreadsJSONBody extends RESTPostAPIChannelMes
|
||||
*
|
||||
* @default ChannelType.PrivateThread
|
||||
*/
|
||||
type?: ChannelType.AnnouncementThread | ChannelType.PublicThread | ChannelType.PrivateThread | undefined;
|
||||
type?: ThreadChannelType | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread; only available when creating a private thread
|
||||
*/
|
||||
@@ -716,7 +745,7 @@ export interface RESTGetAPIChannelThreadMembersQuery {
|
||||
*/
|
||||
export type RESTGetAPIChannelThreadMembersResult = APIThreadMember[];
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#list-public-archived-threads
|
||||
*/
|
||||
export interface RESTGetAPIChannelThreadsArchivedQuery {
|
||||
|
||||
@@ -449,7 +449,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
deaf?: boolean | undefined;
|
||||
}
|
||||
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
@@ -926,3 +926,16 @@ export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingJSONBody = Pick<
|
||||
APIGuildOnboarding,
|
||||
'default_channel_ids' | 'enabled' | 'mode' | 'prompts'
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -830,6 +830,16 @@ export const Routes = {
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*/
|
||||
stickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*
|
||||
* @deprecated Use {@link Routes.stickerPacks} instead.
|
||||
*/
|
||||
nitroStickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
@@ -883,6 +893,7 @@ export const Routes = {
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
* - PUT `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
|
||||
@@ -6,12 +6,19 @@ import type { APISticker, APIStickerPack } from '../../payloads/v10/mod.ts';
|
||||
export type RESTGetAPIStickerResult = APISticker;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-nitro-sticker-packs
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*/
|
||||
export interface RESTGetNitroStickerPacksResult {
|
||||
export interface RESTGetStickerPacksResult {
|
||||
sticker_packs: APIStickerPack[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*
|
||||
* @deprecated Use `RESTGetStickerPacksResult` instead
|
||||
*/
|
||||
export type RESTGetNitroStickerPacksResult = RESTGetStickerPacksResult;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-guild-stickers
|
||||
*/
|
||||
|
||||
@@ -5,11 +5,11 @@ import type {
|
||||
APIEmbed,
|
||||
APIMessage,
|
||||
APIWebhook,
|
||||
APIAttachment,
|
||||
MessageFlags,
|
||||
APIMessageActionRowComponent,
|
||||
} from '../../payloads/v10/mod.ts';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals.ts';
|
||||
import type { RESTAPIAttachment } from './channel.ts';
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/webhook#create-webhook
|
||||
*/
|
||||
@@ -139,7 +139,7 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -257,7 +257,7 @@ export type RESTPatchAPIWebhookWithTokenMessageJSONBody = AddUndefinedToPossibly
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -454,7 +454,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
/**
|
||||
* @deprecated API and gateway v8 are deprecated and the types will not receive further updates, please update to v10.
|
||||
*/
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
|
||||
@@ -2,7 +2,6 @@ import type { Permissions, Snowflake } from '../../globals.ts';
|
||||
import type {
|
||||
APIActionRowComponent,
|
||||
APIAllowedMentions,
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIEmbed,
|
||||
APIExtendedInvite,
|
||||
@@ -18,11 +17,13 @@ import type {
|
||||
MessageFlags,
|
||||
OverwriteType,
|
||||
ThreadAutoArchiveDuration,
|
||||
ThreadChannelType,
|
||||
VideoQualityMode,
|
||||
APIGuildForumTag,
|
||||
APIGuildForumDefaultReactionEmoji,
|
||||
SortOrderType,
|
||||
ForumLayoutType,
|
||||
ChannelFlags,
|
||||
} from '../../payloads/v9/mod.ts';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals.ts';
|
||||
|
||||
@@ -60,15 +61,15 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
position?: number | null | undefined;
|
||||
/**
|
||||
* 0-1024 character channel topic (0-4096 characters for forum channels)
|
||||
* 0-1024 character channel topic (0-4096 characters for thread-only channels)
|
||||
*
|
||||
* Channel types: text, news, forum
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
topic?: string | null | undefined;
|
||||
/**
|
||||
* Whether the channel is nsfw
|
||||
*
|
||||
* Channel types: text, voice, news, forum
|
||||
* Channel types: text, voice, news, forum, media
|
||||
*/
|
||||
nsfw?: boolean | null | undefined;
|
||||
/**
|
||||
@@ -76,7 +77,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* bots, as well as users with the permission `MANAGE_MESSAGES` or `MANAGE_CHANNELS`,
|
||||
* are unaffected
|
||||
*
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum, media
|
||||
*/
|
||||
rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
@@ -100,7 +101,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* ID of the new parent category for a channel
|
||||
*
|
||||
* Channel types: text, voice, news
|
||||
* Channel types: text, voice, news, stage, forum, media
|
||||
*/
|
||||
parent_id?: Snowflake | null | undefined;
|
||||
/**
|
||||
@@ -136,9 +137,19 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity
|
||||
*
|
||||
* Channel types: text, news
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
default_auto_archive_duration?: ThreadAutoArchiveDuration | undefined;
|
||||
/**
|
||||
* Channel flags combined as a bit field.
|
||||
*/
|
||||
flags?: ChannelFlags | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a thread-only channel; limited to 20
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
available_tags?: (Partial<APIGuildForumTag> & Pick<APIGuildForumTag, 'name'>)[] | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread
|
||||
*
|
||||
@@ -146,28 +157,22 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
invitable?: boolean | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel; limited to 20
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
*/
|
||||
available_tags?: APIGuildForumTag[] | undefined;
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_reaction_emoji?: APIGuildForumDefaultReactionEmoji | undefined;
|
||||
/**
|
||||
* The initial `rate_limit_per_user` to set on newly created threads in a channel.
|
||||
* This field is copied to the thread at creation time and does not live update
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: text, forum, media
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_sort_order?: SortOrderType | null | undefined;
|
||||
/**
|
||||
@@ -176,6 +181,12 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* Channel types: forum
|
||||
*/
|
||||
default_forum_layout?: ForumLayoutType | undefined;
|
||||
/**
|
||||
* The ids of the set of tags that have been applied to a thread-only channel; limited to 5
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -235,6 +246,24 @@ export type APIMessageReferenceSend = StrictPartial<APIMessageReference> &
|
||||
fail_if_not_exists?: boolean | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
export interface RESTAPIAttachment {
|
||||
/**
|
||||
* Attachment id or a number that matches `n` in `files[n]`
|
||||
*/
|
||||
id: Snowflake | number;
|
||||
/**
|
||||
* Name of the file
|
||||
*/
|
||||
filename?: string | undefined;
|
||||
/**
|
||||
* Description of the file
|
||||
*/
|
||||
description?: string | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#create-message
|
||||
*/
|
||||
@@ -292,7 +321,7 @@ export interface RESTPostAPIChannelMessageJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -336,7 +365,7 @@ export type RESTDeleteAPIChannelMessageOwnReaction = never;
|
||||
*/
|
||||
export type RESTDeleteAPIChannelMessageUserReactionResult = never;
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#get-reactions
|
||||
*/
|
||||
export interface RESTGetAPIChannelMessageReactionUsersQuery {
|
||||
@@ -411,7 +440,7 @@ export interface RESTPatchAPIChannelMessageJSONBody {
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* The components to include with the message
|
||||
*
|
||||
@@ -630,25 +659,25 @@ export interface RESTPostAPIChannelMessagesThreadsJSONBody {
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsJSONBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: RESTPostAPIChannelMessageJSONBody;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel; limited to 5
|
||||
* The IDs of the set of tags to apply to the thread; limited to 5
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsFormDataBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: string;
|
||||
};
|
||||
@@ -672,7 +701,7 @@ export interface RESTPostAPIChannelThreadsJSONBody extends RESTPostAPIChannelMes
|
||||
*
|
||||
* @default ChannelType.PrivateThread
|
||||
*/
|
||||
type?: ChannelType.AnnouncementThread | ChannelType.PublicThread | ChannelType.PrivateThread | undefined;
|
||||
type?: ThreadChannelType | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread; only available when creating a private thread
|
||||
*/
|
||||
@@ -732,7 +761,7 @@ export interface RESTGetAPIChannelThreadMembersQuery {
|
||||
*/
|
||||
export type RESTGetAPIChannelThreadMembersResult = APIThreadMember[];
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#list-public-archived-threads
|
||||
*/
|
||||
export interface RESTGetAPIChannelThreadsArchivedQuery {
|
||||
|
||||
@@ -449,7 +449,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
deaf?: boolean | undefined;
|
||||
}
|
||||
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
@@ -932,3 +932,16 @@ export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingJSONBody = Pick<
|
||||
APIGuildOnboarding,
|
||||
'default_channel_ids' | 'enabled' | 'mode' | 'prompts'
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -839,6 +839,16 @@ export const Routes = {
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*/
|
||||
stickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*
|
||||
* @deprecated Use {@link Routes.stickerPacks} instead.
|
||||
*/
|
||||
nitroStickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
@@ -892,6 +902,7 @@ export const Routes = {
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
* - PUT `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
|
||||
@@ -6,12 +6,19 @@ import type { APISticker, APIStickerPack } from '../../payloads/v9/mod.ts';
|
||||
export type RESTGetAPIStickerResult = APISticker;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-nitro-sticker-packs
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*/
|
||||
export interface RESTGetNitroStickerPacksResult {
|
||||
export interface RESTGetStickerPacksResult {
|
||||
sticker_packs: APIStickerPack[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*
|
||||
* @deprecated Use `RESTGetStickerPacksResult` instead
|
||||
*/
|
||||
export type RESTGetNitroStickerPacksResult = RESTGetStickerPacksResult;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-guild-stickers
|
||||
*/
|
||||
|
||||
@@ -5,11 +5,11 @@ import type {
|
||||
APIEmbed,
|
||||
APIMessage,
|
||||
APIWebhook,
|
||||
APIAttachment,
|
||||
MessageFlags,
|
||||
APIMessageActionRowComponent,
|
||||
} from '../../payloads/v9/mod.ts';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals.ts';
|
||||
import type { RESTAPIAttachment } from './channel.ts';
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/webhook#create-webhook
|
||||
*/
|
||||
@@ -139,7 +139,7 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -257,7 +257,7 @@ export type RESTPatchAPIWebhookWithTokenMessageJSONBody = AddUndefinedToPossibly
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -1960,7 +1960,7 @@ export interface GatewayPresenceUpdateData {
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-structure
|
||||
*/
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'type' | 'url'>;
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'state' | 'type' | 'url'>;
|
||||
|
||||
// #endregion Sendable Payloads
|
||||
|
||||
|
||||
@@ -1959,7 +1959,7 @@ export interface GatewayPresenceUpdateData {
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#activity-object-activity-structure
|
||||
*/
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'type' | 'url'>;
|
||||
export type GatewayActivityUpdateData = Pick<GatewayActivity, 'name' | 'state' | 'type' | 'url'>;
|
||||
|
||||
// #endregion Sendable Payloads
|
||||
|
||||
|
||||
15
package-lock.json
generated
15
package-lock.json
generated
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "discord-api-types",
|
||||
"version": "0.37.49",
|
||||
"version": "0.37.58",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "discord-api-types",
|
||||
"version": "0.37.49",
|
||||
"version": "0.37.58",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@babel/runtime-corejs3": "^7.18.0",
|
||||
@@ -9448,9 +9448,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/vm2": {
|
||||
"version": "3.9.16",
|
||||
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.16.tgz",
|
||||
"integrity": "sha512-3T9LscojNTxdOyG+e8gFeyBXkMlOBYDoF6dqZbj+MPVHi9x10UfiTAJIobuchRCp3QvC+inybTbMJIUrLsig0w==",
|
||||
"version": "3.9.19",
|
||||
"resolved": "https://registry.npmjs.org/vm2/-/vm2-3.9.19.tgz",
|
||||
"integrity": "sha512-J637XF0DHDMV57R6JyVsTak7nIL8gy5KH4r1HiwWLf/4GBbb5MKL5y7LpmF4A8E2nR6XmzpmMFQ7V7ppPTmUQg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"acorn": "^8.7.0",
|
||||
@@ -9591,8 +9591,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/word-wrap": {
|
||||
"version": "1.2.3",
|
||||
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
|
||||
"integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "discord-api-types",
|
||||
"version": "0.37.49",
|
||||
"version": "0.37.58",
|
||||
"description": "Discord API typings that are kept up to date for use in bot library creation.",
|
||||
"homepage": "https://discord-api-types.dev",
|
||||
"exports": {
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
import type { Permissions, Snowflake } from '../../../globals';
|
||||
import type { APIRole, LocaleString } from '../../../v10';
|
||||
import type { APIAttachment, APIChannel, APIMessage, APIPartialChannel, APIThreadMetadata } from '../channel';
|
||||
import type {
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIMessage,
|
||||
APIPartialChannel,
|
||||
APIThreadChannel,
|
||||
ChannelType,
|
||||
ThreadChannelType,
|
||||
} from '../channel';
|
||||
import type { APIGuildMember } from '../guild';
|
||||
import type { APIUser } from '../user';
|
||||
import type { InteractionType } from './responses';
|
||||
@@ -136,14 +144,18 @@ export type APIGuildInteractionWrapper<Original extends APIBaseInteraction<Inter
|
||||
> &
|
||||
Required<Pick<Original, 'member' | 'guild_id'>>;
|
||||
|
||||
export interface APIInteractionDataResolvedChannelBase<T extends ChannelType> extends Required<APIPartialChannel> {
|
||||
type: T;
|
||||
permissions: Permissions;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object
|
||||
*/
|
||||
export interface APIInteractionDataResolvedChannel extends Required<APIPartialChannel> {
|
||||
thread_metadata?: APIThreadMetadata | null;
|
||||
permissions: Permissions;
|
||||
parent_id?: string | null;
|
||||
}
|
||||
export type APIInteractionDataResolvedChannel =
|
||||
| APIInteractionDataResolvedChannelBase<Exclude<ChannelType, ThreadChannelType>>
|
||||
| (APIInteractionDataResolvedChannelBase<ThreadChannelType> &
|
||||
Pick<APIThreadChannel, 'thread_metadata' | 'parent_id'>);
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-member-object
|
||||
|
||||
@@ -13,6 +13,7 @@ import type {
|
||||
import type { APIChannel, APIOverwrite } from './channel';
|
||||
import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildIntegrationType,
|
||||
GuildDefaultMessageNotifications,
|
||||
GuildExplicitContentFilter,
|
||||
GuildMFALevel,
|
||||
@@ -312,6 +313,15 @@ export interface APIAuditLogOptions {
|
||||
* **Present only if the {@link APIAuditLogOptions#type entry type} is "0"**
|
||||
*/
|
||||
role_name?: string;
|
||||
|
||||
/**
|
||||
* Type of integration which performed the action
|
||||
*
|
||||
* Present from:
|
||||
* - MEMBER_KICK
|
||||
* - MEMBER_ROLE_UPDATE
|
||||
*/
|
||||
integration_type?: APIGuildIntegrationType;
|
||||
}
|
||||
|
||||
export enum AuditLogOptionsType {
|
||||
@@ -725,22 +735,22 @@ export type APIAuditLogChangeKeyAvailable = AuditLogChangeData<'available', bool
|
||||
*/
|
||||
export type APIAuditLogChangeKeyGuildId = AuditLogChangeData<'guild_id', Snowflake>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's archive status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyArchived = AuditLogChangeData<'archived', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's lock status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyLocked = AuditLogChangeData<'locked', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's auto archive duration is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyAutoArchiveDuration = AuditLogChangeData<'auto_archive_duration', number>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a channel's default auto archive duration for newly created threads is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyDefaultAutoArchiveDuration = AuditLogChangeData<
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIApplication } from './application';
|
||||
import type { APIPartialEmoji } from './emoji';
|
||||
import type { APIGuildMember } from './guild';
|
||||
import type { APIMessageInteraction } from './interactions';
|
||||
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions';
|
||||
import type { APIRole } from './permissions';
|
||||
import type { APISticker, APIStickerItem } from './sticker';
|
||||
import type { APIUser } from './user';
|
||||
@@ -50,7 +50,8 @@ export type TextChannelType =
|
||||
| ChannelType.GuildText
|
||||
| ChannelType.GuildForum
|
||||
| ChannelType.GuildVoice
|
||||
| ChannelType.GuildStageVoice;
|
||||
| ChannelType.GuildStageVoice
|
||||
| ChannelType.GuildMedia;
|
||||
|
||||
export type GuildChannelType = Exclude<ChannelType, ChannelType.DM | ChannelType.GroupDM>;
|
||||
|
||||
@@ -124,7 +125,7 @@ export interface APIGuildTextChannel<T extends GuildTextChannelType>
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number;
|
||||
/**
|
||||
* The channel topic (0-4096 characters for forum channels, 0-1024 characters for all others)
|
||||
* The channel topic (0-4096 characters for thread-only channels, 0-1024 characters for all others)
|
||||
*/
|
||||
topic?: string | null;
|
||||
}
|
||||
@@ -205,12 +206,11 @@ export interface APIGroupDMChannel extends Omit<APIDMChannelBase<ChannelType.Gro
|
||||
managed?: boolean;
|
||||
}
|
||||
|
||||
export type ThreadChannelType = ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread;
|
||||
|
||||
export interface APIThreadChannel
|
||||
extends Omit<
|
||||
APITextBasedChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread>,
|
||||
'name'
|
||||
>,
|
||||
APIGuildChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread> {
|
||||
extends Omit<APITextBasedChannel<ThreadChannelType>, 'name'>,
|
||||
APIGuildChannel<ThreadChannelType> {
|
||||
/**
|
||||
* The client users member for the thread, only included in select endpoints
|
||||
*/
|
||||
@@ -240,7 +240,7 @@ export interface APIThreadChannel
|
||||
*/
|
||||
total_message_sent?: number;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel
|
||||
* The IDs of the set of tags that have been applied to a thread in a thread-only channel
|
||||
*/
|
||||
applied_tags: Snowflake[];
|
||||
}
|
||||
@@ -317,25 +317,31 @@ export enum ForumLayoutType {
|
||||
GalleryView,
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIGuildTextChannel<ChannelType.GuildForum> {
|
||||
export interface APIThreadOnlyChannel<T extends ChannelType.GuildForum | ChannelType.GuildMedia>
|
||||
extends APIGuildTextChannel<T> {
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel
|
||||
* The set of tags that can be used in a thread-only channel
|
||||
*/
|
||||
available_tags: APIGuildForumTag[];
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*/
|
||||
default_reaction_emoji: APIGuildForumDefaultReactionEmoji | null;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*/
|
||||
default_sort_order: SortOrderType | null;
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIThreadOnlyChannel<ChannelType.GuildForum> {
|
||||
/**
|
||||
* The default layout type used to display posts in a forum channel. Defaults to `0`, which indicates a layout view has not been set by a channel admin
|
||||
*/
|
||||
default_forum_layout: ForumLayoutType;
|
||||
}
|
||||
|
||||
export type APIGuildMediaChannel = APIThreadOnlyChannel<ChannelType.GuildMedia>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-structure
|
||||
*/
|
||||
@@ -348,7 +354,8 @@ export type APIChannel =
|
||||
| APIGuildStageVoiceChannel
|
||||
| APIGuildCategoryChannel
|
||||
| APIThreadChannel
|
||||
| APIGuildForumChannel;
|
||||
| APIGuildForumChannel
|
||||
| APIGuildMediaChannel;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-types
|
||||
@@ -410,6 +417,12 @@ export enum ChannelType {
|
||||
* A channel that can only contain threads
|
||||
*/
|
||||
GuildForum,
|
||||
/**
|
||||
* A channel like forum channels but contains media for server subscriptions
|
||||
*
|
||||
* See https://creator-support.discord.com/hc/articles/14346342766743
|
||||
*/
|
||||
GuildMedia,
|
||||
|
||||
// EVERYTHING BELOW THIS LINE SHOULD BE OLD NAMES FOR RENAMED ENUM MEMBERS //
|
||||
|
||||
@@ -665,11 +678,16 @@ export interface APIMessage {
|
||||
* It can be used to estimate the relative position of the message in a thread in company with `total_message_sent` on parent thread
|
||||
*/
|
||||
position?: number;
|
||||
|
||||
/**
|
||||
* Data of the role subscription purchase or renewal that prompted this `ROLE_SUBSCRIPTION_PURCHASE` message
|
||||
*/
|
||||
role_subscription_data?: APIMessageRoleSubscriptionData;
|
||||
/**
|
||||
* Data for users, members, channels, and roles in the message's auto-populated select menus
|
||||
*
|
||||
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
|
||||
*/
|
||||
resolved?: APIInteractionDataResolved;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1598,6 +1616,20 @@ export interface APIBaseSelectMenuComponent<
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface APIBaseAutoPopulatedSelectMenuComponent<
|
||||
T extends
|
||||
| ComponentType.UserSelect
|
||||
| ComponentType.RoleSelect
|
||||
| ComponentType.MentionableSelect
|
||||
| ComponentType.ChannelSelect,
|
||||
D extends SelectMenuDefaultValueType,
|
||||
> extends APIBaseSelectMenuComponent<T> {
|
||||
/**
|
||||
* List of default values for auto-populated select menu components
|
||||
*/
|
||||
default_values?: APISelectMenuDefaultValue<D>[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1611,28 +1643,61 @@ export interface APIStringSelectComponent extends APIBaseSelectMenuComponent<Com
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIUserSelectComponent = APIBaseSelectMenuComponent<ComponentType.UserSelect>;
|
||||
export type APIUserSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.UserSelect,
|
||||
SelectMenuDefaultValueType.User
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIRoleSelectComponent = APIBaseSelectMenuComponent<ComponentType.RoleSelect>;
|
||||
export type APIRoleSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.RoleSelect,
|
||||
SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIMentionableSelectComponent = APIBaseSelectMenuComponent<ComponentType.MentionableSelect>;
|
||||
export type APIMentionableSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.MentionableSelect,
|
||||
SelectMenuDefaultValueType.User | SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export interface APIChannelSelectComponent extends APIBaseSelectMenuComponent<ComponentType.ChannelSelect> {
|
||||
export interface APIChannelSelectComponent
|
||||
extends APIBaseAutoPopulatedSelectMenuComponent<ComponentType.ChannelSelect, SelectMenuDefaultValueType.Channel> {
|
||||
/**
|
||||
* List of channel types to include in the ChannelSelect component
|
||||
*/
|
||||
channel_types?: ChannelType[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export enum SelectMenuDefaultValueType {
|
||||
Channel = 'channel',
|
||||
Role = 'role',
|
||||
User = 'user',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export interface APISelectMenuDefaultValue<T extends SelectMenuDefaultValueType> {
|
||||
type: T;
|
||||
id: Snowflake;
|
||||
}
|
||||
|
||||
export type APIAutoPopulatedSelectMenuComponent =
|
||||
| APIChannelSelectComponent
|
||||
| APIMentionableSelectComponent
|
||||
| APIRoleSelectComponent
|
||||
| APIUserSelectComponent;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1744,6 +1809,10 @@ export enum ChannelFlags {
|
||||
* @unstable This channel flag is currently not documented by Discord but has a known value which we will try to keep up to date.
|
||||
*/
|
||||
IsScheduledForDeletion = 1 << 9,
|
||||
/**
|
||||
* Whether media download options are hidden.
|
||||
*/
|
||||
HideMediaDownloadOptions = 1 << 15,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -79,7 +79,7 @@ export interface GatewayPresenceUpdate {
|
||||
/**
|
||||
* Either "idle", "dnd", "online", or "offline"
|
||||
*/
|
||||
status?: PresenceUpdateStatus;
|
||||
status?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* User's current activities
|
||||
*
|
||||
@@ -94,6 +94,9 @@ export interface GatewayPresenceUpdate {
|
||||
client_status?: GatewayPresenceClientStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#update-presence-status-types
|
||||
*/
|
||||
export enum PresenceUpdateStatus {
|
||||
Online = 'online',
|
||||
DoNotDisturb = 'dnd',
|
||||
@@ -105,6 +108,8 @@ export enum PresenceUpdateStatus {
|
||||
Offline = 'offline',
|
||||
}
|
||||
|
||||
export type PresenceUpdateReceiveStatus = Exclude<PresenceUpdateStatus, PresenceUpdateStatus.Invisible>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#client-status-object
|
||||
*/
|
||||
@@ -112,15 +117,15 @@ export interface GatewayPresenceClientStatus {
|
||||
/**
|
||||
* The user's status set for an active desktop (Windows, Linux, Mac) application session
|
||||
*/
|
||||
desktop?: PresenceUpdateStatus;
|
||||
desktop?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active mobile (iOS, Android) application session
|
||||
*/
|
||||
mobile?: PresenceUpdateStatus;
|
||||
mobile?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active web (browser, bot account) application session
|
||||
*/
|
||||
web?: PresenceUpdateStatus;
|
||||
web?: PresenceUpdateReceiveStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -176,7 +181,7 @@ export interface GatewayActivity {
|
||||
*/
|
||||
details?: string | null;
|
||||
/**
|
||||
* The user's current party status
|
||||
* The user's current party status, or the text used for a custom status
|
||||
*/
|
||||
state?: string | null;
|
||||
/**
|
||||
@@ -261,7 +266,7 @@ export enum ActivityType {
|
||||
*/
|
||||
Watching,
|
||||
/**
|
||||
* {emoji} {details}
|
||||
* {emoji} {state}
|
||||
*/
|
||||
Custom,
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji';
|
||||
import type { PresenceUpdateStatus } from './gateway';
|
||||
import type { PresenceUpdateReceiveStatus } from './gateway';
|
||||
import type { OAuth2Scopes } from './oauth2';
|
||||
import type { APIRole } from './permissions';
|
||||
import type { APISticker } from './sticker';
|
||||
@@ -427,7 +427,7 @@ export enum GuildFeature {
|
||||
* Guild has enabled the role subscription promo page
|
||||
*/
|
||||
CreatorStorePage = 'CREATOR_STORE_PAGE',
|
||||
/*
|
||||
/**
|
||||
* Guild has been set as a support server on the App Directory
|
||||
*/
|
||||
DeveloperSupportServer = 'DEVELOPER_SUPPORT_SERVER',
|
||||
@@ -903,7 +903,7 @@ export interface APIGuildWidgetMember {
|
||||
username: string;
|
||||
discriminator: string;
|
||||
avatar: string | null;
|
||||
status: PresenceUpdateStatus;
|
||||
status: PresenceUpdateReceiveStatus;
|
||||
activity?: { name: string };
|
||||
avatar_url: string;
|
||||
}
|
||||
@@ -1028,6 +1028,10 @@ export interface APIGuildOnboarding {
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
/**
|
||||
* Current mode of onboarding
|
||||
*/
|
||||
mode: GuildOnboardingMode;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1095,6 +1099,20 @@ export interface APIGuildOnboardingPromptOption {
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
|
||||
*/
|
||||
export enum GuildOnboardingMode {
|
||||
/**
|
||||
* Counts only Default Channels towards constraints
|
||||
*/
|
||||
OnboardingDefault,
|
||||
/**
|
||||
* Counts Default Channels and Questions towards constraints
|
||||
*/
|
||||
OnboardingAdvanced,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
|
||||
@@ -90,6 +90,9 @@ export interface APIRoleTags {
|
||||
guild_connections?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/permissions#role-object-role-flags
|
||||
*/
|
||||
export enum RoleFlags {
|
||||
/**
|
||||
* Role can be selected by members in an onboarding prompt
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface APISticker {
|
||||
*/
|
||||
export enum StickerType {
|
||||
/**
|
||||
* An official sticker in a pack, part of Nitro or in a removed purchasable pack
|
||||
* An official sticker in a pack
|
||||
*/
|
||||
Standard = 1,
|
||||
/**
|
||||
|
||||
@@ -43,6 +43,8 @@ export interface APITeamMember {
|
||||
membership_state: TeamMemberMembershipState;
|
||||
/**
|
||||
* Will always be `["*"]`
|
||||
*
|
||||
* @deprecated Use `role` instead
|
||||
*/
|
||||
permissions: ['*'];
|
||||
/**
|
||||
@@ -55,6 +57,12 @@ export interface APITeamMember {
|
||||
* See https://discord.com/developers/docs/resources/user#user-object
|
||||
*/
|
||||
user: APIUser;
|
||||
/**
|
||||
* The user's role in the team.
|
||||
*
|
||||
* See https://discord.com/developers/docs/topics/teams#team-member-roles
|
||||
*/
|
||||
role: TeamMemberRole;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -64,3 +72,12 @@ export enum TeamMemberMembershipState {
|
||||
Invited = 1,
|
||||
Accepted,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/teams#team-member-roles-team-member-role-types
|
||||
*/
|
||||
export enum TeamMemberRole {
|
||||
Admin = 'admin',
|
||||
Developer = 'developer',
|
||||
ReadOnly = 'read_only',
|
||||
}
|
||||
|
||||
@@ -281,7 +281,11 @@ export enum ConnectionService {
|
||||
Steam = 'steam',
|
||||
TikTok = 'tiktok',
|
||||
Twitch = 'twitch',
|
||||
Twitter = 'twitter',
|
||||
X = 'twitter',
|
||||
/**
|
||||
* @deprecated This is the old name for {@apilink ConnectionService#X}
|
||||
*/
|
||||
Twitter = X,
|
||||
Xbox = 'xbox',
|
||||
YouTube = 'youtube',
|
||||
}
|
||||
|
||||
@@ -1,6 +1,14 @@
|
||||
import type { Permissions, Snowflake } from '../../../globals';
|
||||
import type { APIRole, LocaleString } from '../../../v9';
|
||||
import type { APIAttachment, APIChannel, APIMessage, APIPartialChannel, APIThreadMetadata } from '../channel';
|
||||
import type {
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIMessage,
|
||||
APIPartialChannel,
|
||||
APIThreadChannel,
|
||||
ChannelType,
|
||||
ThreadChannelType,
|
||||
} from '../channel';
|
||||
import type { APIGuildMember } from '../guild';
|
||||
import type { APIUser } from '../user';
|
||||
import type { InteractionType } from './responses';
|
||||
@@ -136,14 +144,18 @@ export type APIGuildInteractionWrapper<Original extends APIBaseInteraction<Inter
|
||||
> &
|
||||
Required<Pick<Original, 'member' | 'guild_id'>>;
|
||||
|
||||
export interface APIInteractionDataResolvedChannelBase<T extends ChannelType> extends Required<APIPartialChannel> {
|
||||
type: T;
|
||||
permissions: Permissions;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object
|
||||
*/
|
||||
export interface APIInteractionDataResolvedChannel extends Required<APIPartialChannel> {
|
||||
thread_metadata?: APIThreadMetadata | null;
|
||||
permissions: Permissions;
|
||||
parent_id?: string | null;
|
||||
}
|
||||
export type APIInteractionDataResolvedChannel =
|
||||
| APIInteractionDataResolvedChannelBase<Exclude<ChannelType, ThreadChannelType>>
|
||||
| (APIInteractionDataResolvedChannelBase<ThreadChannelType> &
|
||||
Pick<APIThreadChannel, 'thread_metadata' | 'parent_id'>);
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-member-object
|
||||
|
||||
@@ -13,6 +13,7 @@ import type {
|
||||
import type { APIChannel, APIOverwrite } from './channel';
|
||||
import type {
|
||||
APIGuildIntegration,
|
||||
APIGuildIntegrationType,
|
||||
GuildDefaultMessageNotifications,
|
||||
GuildExplicitContentFilter,
|
||||
GuildMFALevel,
|
||||
@@ -312,6 +313,15 @@ export interface APIAuditLogOptions {
|
||||
* **Present only if the {@link APIAuditLogOptions#type entry type} is "0"**
|
||||
*/
|
||||
role_name?: string;
|
||||
|
||||
/**
|
||||
* Type of integration which performed the action
|
||||
*
|
||||
* Present from:
|
||||
* - MEMBER_KICK
|
||||
* - MEMBER_ROLE_UPDATE
|
||||
*/
|
||||
integration_type?: APIGuildIntegrationType;
|
||||
}
|
||||
|
||||
export enum AuditLogOptionsType {
|
||||
@@ -725,22 +735,22 @@ export type APIAuditLogChangeKeyAvailable = AuditLogChangeData<'available', bool
|
||||
*/
|
||||
export type APIAuditLogChangeKeyGuildId = AuditLogChangeData<'guild_id', Snowflake>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's archive status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyArchived = AuditLogChangeData<'archived', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's lock status is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyLocked = AuditLogChangeData<'locked', boolean>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a thread's auto archive duration is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyAutoArchiveDuration = AuditLogChangeData<'auto_archive_duration', number>;
|
||||
|
||||
/*
|
||||
/**
|
||||
* Returned when a channel's default auto archive duration for newly created threads is changed
|
||||
*/
|
||||
export type APIAuditLogChangeKeyDefaultAutoArchiveDuration = AuditLogChangeData<
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIApplication } from './application';
|
||||
import type { APIPartialEmoji } from './emoji';
|
||||
import type { APIGuildMember } from './guild';
|
||||
import type { APIMessageInteraction } from './interactions';
|
||||
import type { APIInteractionDataResolved, APIMessageInteraction } from './interactions';
|
||||
import type { APIRole } from './permissions';
|
||||
import type { APISticker, APIStickerItem } from './sticker';
|
||||
import type { APIUser } from './user';
|
||||
@@ -50,7 +50,8 @@ export type TextChannelType =
|
||||
| ChannelType.GuildText
|
||||
| ChannelType.GuildForum
|
||||
| ChannelType.GuildVoice
|
||||
| ChannelType.GuildStageVoice;
|
||||
| ChannelType.GuildStageVoice
|
||||
| ChannelType.GuildMedia;
|
||||
|
||||
export type GuildChannelType = Exclude<ChannelType, ChannelType.DM | ChannelType.GroupDM>;
|
||||
|
||||
@@ -124,7 +125,7 @@ export interface APIGuildTextChannel<T extends GuildTextChannelType>
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number;
|
||||
/**
|
||||
* The channel topic (0-1024 characters)
|
||||
* The channel topic (0-4096 characters for thread-only channels, 0-1024 characters for all others)
|
||||
*/
|
||||
topic?: string | null;
|
||||
}
|
||||
@@ -201,12 +202,11 @@ export interface APIGroupDMChannel extends Omit<APIDMChannelBase<ChannelType.Gro
|
||||
managed?: boolean;
|
||||
}
|
||||
|
||||
export type ThreadChannelType = ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread;
|
||||
|
||||
export interface APIThreadChannel
|
||||
extends Omit<
|
||||
APITextBasedChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread>,
|
||||
'name'
|
||||
>,
|
||||
APIGuildChannel<ChannelType.PublicThread | ChannelType.PrivateThread | ChannelType.AnnouncementThread> {
|
||||
extends Omit<APITextBasedChannel<ThreadChannelType>, 'name'>,
|
||||
APIGuildChannel<ThreadChannelType> {
|
||||
/**
|
||||
* The client users member for the thread, only included in select endpoints
|
||||
*/
|
||||
@@ -236,7 +236,7 @@ export interface APIThreadChannel
|
||||
*/
|
||||
total_message_sent?: number;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel
|
||||
* The IDs of the set of tags that have been applied to a thread in a thread-only channel
|
||||
*/
|
||||
applied_tags: Snowflake[];
|
||||
}
|
||||
@@ -313,25 +313,31 @@ export enum ForumLayoutType {
|
||||
GalleryView,
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIGuildTextChannel<ChannelType.GuildForum> {
|
||||
export interface APIThreadOnlyChannel<T extends ChannelType.GuildForum | ChannelType.GuildMedia>
|
||||
extends APIGuildTextChannel<T> {
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel
|
||||
* The set of tags that can be used in a thread-only channel
|
||||
*/
|
||||
available_tags: APIGuildForumTag[];
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*/
|
||||
default_reaction_emoji: APIGuildForumDefaultReactionEmoji | null;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*/
|
||||
default_sort_order: SortOrderType | null;
|
||||
}
|
||||
|
||||
export interface APIGuildForumChannel extends APIThreadOnlyChannel<ChannelType.GuildForum> {
|
||||
/**
|
||||
* The default layout type used to display posts in a forum channel. Defaults to `0`, which indicates a layout view has not been set by a channel admin
|
||||
*/
|
||||
default_forum_layout: ForumLayoutType;
|
||||
}
|
||||
|
||||
export type APIGuildMediaChannel = APIThreadOnlyChannel<ChannelType.GuildMedia>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-structure
|
||||
*/
|
||||
@@ -344,7 +350,8 @@ export type APIChannel =
|
||||
| APIGuildStageVoiceChannel
|
||||
| APIGuildCategoryChannel
|
||||
| APIThreadChannel
|
||||
| APIGuildForumChannel;
|
||||
| APIGuildForumChannel
|
||||
| APIGuildMediaChannel;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#channel-object-channel-types
|
||||
@@ -406,6 +413,12 @@ export enum ChannelType {
|
||||
* A channel that can only contain threads
|
||||
*/
|
||||
GuildForum,
|
||||
/**
|
||||
* A channel like forum channels but contains media for server subscriptions
|
||||
*
|
||||
* See https://creator-support.discord.com/hc/articles/14346342766743
|
||||
*/
|
||||
GuildMedia,
|
||||
|
||||
// EVERYTHING BELOW THIS LINE SHOULD BE OLD NAMES FOR RENAMED ENUM MEMBERS
|
||||
/**
|
||||
@@ -656,6 +669,12 @@ export interface APIMessage {
|
||||
* It can be used to estimate the relative position of the message in a thread in company with `total_message_sent` on parent thread
|
||||
*/
|
||||
position?: number;
|
||||
/**
|
||||
* Data for users, members, channels, and roles in the message's auto-populated select menus
|
||||
*
|
||||
* See https://discord.com/developers/docs/interactions/receiving-and-responding#interaction-object-resolved-data-structure
|
||||
*/
|
||||
resolved?: APIInteractionDataResolved;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1566,6 +1585,20 @@ export interface APIBaseSelectMenuComponent<
|
||||
disabled?: boolean;
|
||||
}
|
||||
|
||||
export interface APIBaseAutoPopulatedSelectMenuComponent<
|
||||
T extends
|
||||
| ComponentType.UserSelect
|
||||
| ComponentType.RoleSelect
|
||||
| ComponentType.MentionableSelect
|
||||
| ComponentType.ChannelSelect,
|
||||
D extends SelectMenuDefaultValueType,
|
||||
> extends APIBaseSelectMenuComponent<T> {
|
||||
/**
|
||||
* List of default values for auto-populated select menu components
|
||||
*/
|
||||
default_values?: APISelectMenuDefaultValue<D>[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1579,28 +1612,61 @@ export interface APIStringSelectComponent extends APIBaseSelectMenuComponent<Com
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIUserSelectComponent = APIBaseSelectMenuComponent<ComponentType.UserSelect>;
|
||||
export type APIUserSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.UserSelect,
|
||||
SelectMenuDefaultValueType.User
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIRoleSelectComponent = APIBaseSelectMenuComponent<ComponentType.RoleSelect>;
|
||||
export type APIRoleSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.RoleSelect,
|
||||
SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export type APIMentionableSelectComponent = APIBaseSelectMenuComponent<ComponentType.MentionableSelect>;
|
||||
export type APIMentionableSelectComponent = APIBaseAutoPopulatedSelectMenuComponent<
|
||||
ComponentType.MentionableSelect,
|
||||
SelectMenuDefaultValueType.User | SelectMenuDefaultValueType.Role
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
export interface APIChannelSelectComponent extends APIBaseSelectMenuComponent<ComponentType.ChannelSelect> {
|
||||
export interface APIChannelSelectComponent
|
||||
extends APIBaseAutoPopulatedSelectMenuComponent<ComponentType.ChannelSelect, SelectMenuDefaultValueType.Channel> {
|
||||
/**
|
||||
* List of channel types to include in the ChannelSelect component
|
||||
*/
|
||||
channel_types?: ChannelType[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export enum SelectMenuDefaultValueType {
|
||||
Channel = 'channel',
|
||||
Role = 'role',
|
||||
User = 'user',
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menu-object-select-default-value-structure
|
||||
*/
|
||||
export interface APISelectMenuDefaultValue<T extends SelectMenuDefaultValueType> {
|
||||
type: T;
|
||||
id: Snowflake;
|
||||
}
|
||||
|
||||
export type APIAutoPopulatedSelectMenuComponent =
|
||||
| APIChannelSelectComponent
|
||||
| APIMentionableSelectComponent
|
||||
| APIRoleSelectComponent
|
||||
| APIUserSelectComponent;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/interactions/message-components#select-menus
|
||||
*/
|
||||
@@ -1712,6 +1778,10 @@ export enum ChannelFlags {
|
||||
* @unstable This channel flag is currently not documented by Discord but has a known value which we will try to keep up to date.
|
||||
*/
|
||||
IsScheduledForDeletion = 1 << 9,
|
||||
/**
|
||||
* Whether media download options are hidden.
|
||||
*/
|
||||
HideMediaDownloadOptions = 1 << 15,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -79,7 +79,7 @@ export interface GatewayPresenceUpdate {
|
||||
/**
|
||||
* Either "idle", "dnd", "online", or "offline"
|
||||
*/
|
||||
status?: PresenceUpdateStatus;
|
||||
status?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* User's current activities
|
||||
*
|
||||
@@ -94,6 +94,9 @@ export interface GatewayPresenceUpdate {
|
||||
client_status?: GatewayPresenceClientStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#update-presence-status-types
|
||||
*/
|
||||
export enum PresenceUpdateStatus {
|
||||
Online = 'online',
|
||||
DoNotDisturb = 'dnd',
|
||||
@@ -105,6 +108,8 @@ export enum PresenceUpdateStatus {
|
||||
Offline = 'offline',
|
||||
}
|
||||
|
||||
export type PresenceUpdateReceiveStatus = Exclude<PresenceUpdateStatus, PresenceUpdateStatus.Invisible>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/gateway-events#client-status-object
|
||||
*/
|
||||
@@ -112,15 +117,15 @@ export interface GatewayPresenceClientStatus {
|
||||
/**
|
||||
* The user's status set for an active desktop (Windows, Linux, Mac) application session
|
||||
*/
|
||||
desktop?: PresenceUpdateStatus;
|
||||
desktop?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active mobile (iOS, Android) application session
|
||||
*/
|
||||
mobile?: PresenceUpdateStatus;
|
||||
mobile?: PresenceUpdateReceiveStatus;
|
||||
/**
|
||||
* The user's status set for an active web (browser, bot account) application session
|
||||
*/
|
||||
web?: PresenceUpdateStatus;
|
||||
web?: PresenceUpdateReceiveStatus;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,7 +172,7 @@ export interface GatewayActivity {
|
||||
*/
|
||||
details?: string | null;
|
||||
/**
|
||||
* The user's current party status
|
||||
* The user's current party status, or the text used for a custom status
|
||||
*/
|
||||
state?: string | null;
|
||||
/**
|
||||
@@ -249,7 +254,7 @@ export enum ActivityType {
|
||||
*/
|
||||
Watching,
|
||||
/**
|
||||
* {emoji} {details}
|
||||
* {emoji} {state}
|
||||
*/
|
||||
Custom,
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
import type { Permissions, Snowflake } from '../../globals';
|
||||
import type { APIEmoji, APIPartialEmoji } from './emoji';
|
||||
import type { PresenceUpdateStatus } from './gateway';
|
||||
import type { PresenceUpdateReceiveStatus } from './gateway';
|
||||
import type { OAuth2Scopes } from './oauth2';
|
||||
import type { APIRole } from './permissions';
|
||||
import type { APISticker } from './sticker';
|
||||
@@ -419,7 +419,7 @@ export enum GuildFeature {
|
||||
* Guild has enabled the role subscription promo page
|
||||
*/
|
||||
CreatorStorePage = 'CREATOR_STORE_PAGE',
|
||||
/*
|
||||
/**
|
||||
* Guild has been set as a support server on the App Directory
|
||||
*/
|
||||
DeveloperSupportServer = 'DEVELOPER_SUPPORT_SERVER',
|
||||
@@ -895,7 +895,7 @@ export interface APIGuildWidgetMember {
|
||||
username: string;
|
||||
discriminator: string;
|
||||
avatar: string | null;
|
||||
status: PresenceUpdateStatus;
|
||||
status: PresenceUpdateReceiveStatus;
|
||||
activity?: { name: string };
|
||||
avatar_url: string;
|
||||
}
|
||||
@@ -1020,6 +1020,10 @@ export interface APIGuildOnboarding {
|
||||
* Whether onboarding is enabled in the guild
|
||||
*/
|
||||
enabled: boolean;
|
||||
/**
|
||||
* Current mode of onboarding
|
||||
*/
|
||||
mode: GuildOnboardingMode;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1087,6 +1091,20 @@ export interface APIGuildOnboardingPromptOption {
|
||||
description: string | null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-onboarding-mode
|
||||
*/
|
||||
export enum GuildOnboardingMode {
|
||||
/**
|
||||
* Counts only Default Channels towards constraints
|
||||
*/
|
||||
OnboardingDefault,
|
||||
/**
|
||||
* Counts Default Channels and Questions towards constraints
|
||||
*/
|
||||
OnboardingAdvanced,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#guild-onboarding-object-prompt-types
|
||||
*/
|
||||
|
||||
@@ -90,6 +90,9 @@ export interface APIRoleTags {
|
||||
guild_connections?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/permissions#role-object-role-flags
|
||||
*/
|
||||
export enum RoleFlags {
|
||||
/**
|
||||
* Role can be selected by members in an onboarding prompt
|
||||
|
||||
@@ -70,7 +70,7 @@ export interface APISticker {
|
||||
*/
|
||||
export enum StickerType {
|
||||
/**
|
||||
* An official sticker in a pack, part of Nitro or in a removed purchasable pack
|
||||
* An official sticker in a pack
|
||||
*/
|
||||
Standard = 1,
|
||||
/**
|
||||
|
||||
@@ -43,6 +43,8 @@ export interface APITeamMember {
|
||||
membership_state: TeamMemberMembershipState;
|
||||
/**
|
||||
* Will always be `["*"]`
|
||||
*
|
||||
* @deprecated Use `role` instead
|
||||
*/
|
||||
permissions: ['*'];
|
||||
/**
|
||||
@@ -55,6 +57,12 @@ export interface APITeamMember {
|
||||
* See https://discord.com/developers/docs/resources/user#user-object
|
||||
*/
|
||||
user: APIUser;
|
||||
/**
|
||||
* The user's role in the team.
|
||||
*
|
||||
* See https://discord.com/developers/docs/topics/teams#team-member-roles
|
||||
*/
|
||||
role: TeamMemberRole;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -64,3 +72,12 @@ export enum TeamMemberMembershipState {
|
||||
Invited = 1,
|
||||
Accepted,
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/topics/teams#team-member-roles-team-member-role-types
|
||||
*/
|
||||
export enum TeamMemberRole {
|
||||
Admin = 'admin',
|
||||
Developer = 'developer',
|
||||
ReadOnly = 'read_only',
|
||||
}
|
||||
|
||||
@@ -281,7 +281,11 @@ export enum ConnectionService {
|
||||
Steam = 'steam',
|
||||
TikTok = 'tiktok',
|
||||
Twitch = 'twitch',
|
||||
Twitter = 'twitter',
|
||||
X = 'twitter',
|
||||
/**
|
||||
* @deprecated This is the old name for {@apilink ConnectionService#X}
|
||||
*/
|
||||
Twitter = X,
|
||||
Xbox = 'xbox',
|
||||
YouTube = 'youtube',
|
||||
}
|
||||
|
||||
@@ -285,6 +285,9 @@ export enum RESTJSONErrorCodes {
|
||||
WebhookServicesCannotBeUsedInForumChannels,
|
||||
|
||||
MessageBlockedByHarmfulLinksFilter = 240_000,
|
||||
|
||||
CannotEnableOnboardingRequirementsAreNotMet = 350_000,
|
||||
CannotUpdateOnboardingWhileBelowRequirements,
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -2,7 +2,6 @@ import type { Permissions, Snowflake } from '../../globals';
|
||||
import type {
|
||||
APIActionRowComponent,
|
||||
APIAllowedMentions,
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIEmbed,
|
||||
APIExtendedInvite,
|
||||
@@ -18,11 +17,13 @@ import type {
|
||||
MessageFlags,
|
||||
OverwriteType,
|
||||
ThreadAutoArchiveDuration,
|
||||
ThreadChannelType,
|
||||
VideoQualityMode,
|
||||
APIGuildForumTag,
|
||||
APIGuildForumDefaultReactionEmoji,
|
||||
SortOrderType,
|
||||
ForumLayoutType,
|
||||
ChannelFlags,
|
||||
} from '../../payloads/v10/index';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals';
|
||||
|
||||
@@ -60,15 +61,15 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
position?: number | null | undefined;
|
||||
/**
|
||||
* 0-1024 character channel topic (0-4096 characters for forum channels)
|
||||
* 0-1024 character channel topic (0-4096 characters for thread-only channels)
|
||||
*
|
||||
* Channel types: text, news, forum
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
topic?: string | null | undefined;
|
||||
/**
|
||||
* Whether the channel is nsfw
|
||||
*
|
||||
* Channel types: text, voice, news, forum
|
||||
* Channel types: text, voice, news, forum, media
|
||||
*/
|
||||
nsfw?: boolean | null | undefined;
|
||||
/**
|
||||
@@ -76,7 +77,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* bots, as well as users with the permission `MANAGE_MESSAGES` or `MANAGE_CHANNELS`,
|
||||
* are unaffected
|
||||
*
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum, media
|
||||
*/
|
||||
rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
@@ -100,7 +101,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* ID of the new parent category for a channel
|
||||
*
|
||||
* Channel types: text, voice, news
|
||||
* Channel types: text, voice, news, stage, forum, media
|
||||
*/
|
||||
parent_id?: Snowflake | null | undefined;
|
||||
/**
|
||||
@@ -136,9 +137,19 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity
|
||||
*
|
||||
* Channel types: text, news
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
default_auto_archive_duration?: ThreadAutoArchiveDuration | undefined;
|
||||
/**
|
||||
* Channel flags combined as a bit field.
|
||||
*/
|
||||
flags?: ChannelFlags | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a thread-only channel; limited to 20
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
available_tags?: (Partial<APIGuildForumTag> & Pick<APIGuildForumTag, 'name'>)[] | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread
|
||||
*
|
||||
@@ -146,28 +157,22 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
invitable?: boolean | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel; limited to 20
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
*/
|
||||
available_tags?: APIGuildForumTag[] | undefined;
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_reaction_emoji?: APIGuildForumDefaultReactionEmoji | undefined;
|
||||
/**
|
||||
* The initial `rate_limit_per_user` to set on newly created threads in a channel.
|
||||
* This field is copied to the thread at creation time and does not live update
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: text, forum, media
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_sort_order?: SortOrderType | null | undefined;
|
||||
/**
|
||||
@@ -176,6 +181,12 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* Channel types: forum
|
||||
*/
|
||||
default_forum_layout?: ForumLayoutType | undefined;
|
||||
/**
|
||||
* The ids of the set of tags that have been applied to a thread-only channel; limited to 5
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -235,6 +246,24 @@ export type APIMessageReferenceSend = StrictPartial<APIMessageReference> &
|
||||
fail_if_not_exists?: boolean | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
export interface RESTAPIAttachment {
|
||||
/**
|
||||
* Attachment id or a number that matches `n` in `files[n]`
|
||||
*/
|
||||
id: Snowflake | number;
|
||||
/**
|
||||
* Name of the file
|
||||
*/
|
||||
filename?: string | undefined;
|
||||
/**
|
||||
* Description of the file
|
||||
*/
|
||||
description?: string | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#create-message
|
||||
*/
|
||||
@@ -284,7 +313,7 @@ export interface RESTPostAPIChannelMessageJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -328,7 +357,7 @@ export type RESTDeleteAPIChannelMessageOwnReaction = never;
|
||||
*/
|
||||
export type RESTDeleteAPIChannelMessageUserReactionResult = never;
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#get-reactions
|
||||
*/
|
||||
export interface RESTGetAPIChannelMessageReactionUsersQuery {
|
||||
@@ -395,7 +424,7 @@ export interface RESTPatchAPIChannelMessageJSONBody {
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* The components to include with the message
|
||||
*
|
||||
@@ -614,25 +643,25 @@ export interface RESTPostAPIChannelMessagesThreadsJSONBody {
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsJSONBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: RESTPostAPIChannelMessageJSONBody;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel; limited to 5
|
||||
* The IDs of the set of tags to apply to the thread; limited to 5
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsFormDataBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: string;
|
||||
};
|
||||
@@ -656,7 +685,7 @@ export interface RESTPostAPIChannelThreadsJSONBody extends RESTPostAPIChannelMes
|
||||
*
|
||||
* @default ChannelType.PrivateThread
|
||||
*/
|
||||
type?: ChannelType.AnnouncementThread | ChannelType.PublicThread | ChannelType.PrivateThread | undefined;
|
||||
type?: ThreadChannelType | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread; only available when creating a private thread
|
||||
*/
|
||||
@@ -716,7 +745,7 @@ export interface RESTGetAPIChannelThreadMembersQuery {
|
||||
*/
|
||||
export type RESTGetAPIChannelThreadMembersResult = APIThreadMember[];
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#list-public-archived-threads
|
||||
*/
|
||||
export interface RESTGetAPIChannelThreadsArchivedQuery {
|
||||
|
||||
@@ -449,7 +449,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
deaf?: boolean | undefined;
|
||||
}
|
||||
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
@@ -926,3 +926,16 @@ export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingJSONBody = Pick<
|
||||
APIGuildOnboarding,
|
||||
'default_channel_ids' | 'enabled' | 'mode' | 'prompts'
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -830,6 +830,16 @@ export const Routes = {
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*/
|
||||
stickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*
|
||||
* @deprecated Use {@link Routes.stickerPacks} instead.
|
||||
*/
|
||||
nitroStickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
@@ -883,6 +893,7 @@ export const Routes = {
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
* - PUT `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
|
||||
@@ -6,12 +6,19 @@ import type { APISticker, APIStickerPack } from '../../payloads/v10/index';
|
||||
export type RESTGetAPIStickerResult = APISticker;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-nitro-sticker-packs
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*/
|
||||
export interface RESTGetNitroStickerPacksResult {
|
||||
export interface RESTGetStickerPacksResult {
|
||||
sticker_packs: APIStickerPack[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*
|
||||
* @deprecated Use `RESTGetStickerPacksResult` instead
|
||||
*/
|
||||
export type RESTGetNitroStickerPacksResult = RESTGetStickerPacksResult;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-guild-stickers
|
||||
*/
|
||||
|
||||
@@ -5,11 +5,11 @@ import type {
|
||||
APIEmbed,
|
||||
APIMessage,
|
||||
APIWebhook,
|
||||
APIAttachment,
|
||||
MessageFlags,
|
||||
APIMessageActionRowComponent,
|
||||
} from '../../payloads/v10/index';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals';
|
||||
import type { RESTAPIAttachment } from './channel';
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/webhook#create-webhook
|
||||
*/
|
||||
@@ -139,7 +139,7 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -257,7 +257,7 @@ export type RESTPatchAPIWebhookWithTokenMessageJSONBody = AddUndefinedToPossibly
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -454,7 +454,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
/**
|
||||
* @deprecated API and gateway v8 are deprecated and the types will not receive further updates, please update to v10.
|
||||
*/
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
|
||||
@@ -2,7 +2,6 @@ import type { Permissions, Snowflake } from '../../globals';
|
||||
import type {
|
||||
APIActionRowComponent,
|
||||
APIAllowedMentions,
|
||||
APIAttachment,
|
||||
APIChannel,
|
||||
APIEmbed,
|
||||
APIExtendedInvite,
|
||||
@@ -18,11 +17,13 @@ import type {
|
||||
MessageFlags,
|
||||
OverwriteType,
|
||||
ThreadAutoArchiveDuration,
|
||||
ThreadChannelType,
|
||||
VideoQualityMode,
|
||||
APIGuildForumTag,
|
||||
APIGuildForumDefaultReactionEmoji,
|
||||
SortOrderType,
|
||||
ForumLayoutType,
|
||||
ChannelFlags,
|
||||
} from '../../payloads/v9/index';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, StrictPartial } from '../../utils/internals';
|
||||
|
||||
@@ -60,15 +61,15 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
position?: number | null | undefined;
|
||||
/**
|
||||
* 0-1024 character channel topic (0-4096 characters for forum channels)
|
||||
* 0-1024 character channel topic (0-4096 characters for thread-only channels)
|
||||
*
|
||||
* Channel types: text, news, forum
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
topic?: string | null | undefined;
|
||||
/**
|
||||
* Whether the channel is nsfw
|
||||
*
|
||||
* Channel types: text, voice, news, forum
|
||||
* Channel types: text, voice, news, forum, media
|
||||
*/
|
||||
nsfw?: boolean | null | undefined;
|
||||
/**
|
||||
@@ -76,7 +77,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* bots, as well as users with the permission `MANAGE_MESSAGES` or `MANAGE_CHANNELS`,
|
||||
* are unaffected
|
||||
*
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum
|
||||
* Channel types: text, newsThread, publicThread, privateThread, forum, media
|
||||
*/
|
||||
rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
@@ -100,7 +101,7 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* ID of the new parent category for a channel
|
||||
*
|
||||
* Channel types: text, voice, news
|
||||
* Channel types: text, voice, news, stage, forum, media
|
||||
*/
|
||||
parent_id?: Snowflake | null | undefined;
|
||||
/**
|
||||
@@ -136,9 +137,19 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
/**
|
||||
* Default duration for newly created threads, in minutes, to automatically archive the thread after recent activity
|
||||
*
|
||||
* Channel types: text, news
|
||||
* Channel types: text, news, forum, media
|
||||
*/
|
||||
default_auto_archive_duration?: ThreadAutoArchiveDuration | undefined;
|
||||
/**
|
||||
* Channel flags combined as a bit field.
|
||||
*/
|
||||
flags?: ChannelFlags | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a thread-only channel; limited to 20
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
available_tags?: (Partial<APIGuildForumTag> & Pick<APIGuildForumTag, 'name'>)[] | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread
|
||||
*
|
||||
@@ -146,28 +157,22 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
*/
|
||||
invitable?: boolean | undefined;
|
||||
/**
|
||||
* The set of tags that can be used in a forum channel; limited to 20
|
||||
* The emoji to show in the add reaction button on a thread in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
*/
|
||||
available_tags?: APIGuildForumTag[] | undefined;
|
||||
/**
|
||||
* The emoji to show in the add reaction button on a thread in a forum channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_reaction_emoji?: APIGuildForumDefaultReactionEmoji | undefined;
|
||||
/**
|
||||
* The initial `rate_limit_per_user` to set on newly created threads in a channel.
|
||||
* This field is copied to the thread at creation time and does not live update
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: text, forum, media
|
||||
*/
|
||||
default_thread_rate_limit_per_user?: number | null | undefined;
|
||||
/**
|
||||
* The default sort order type used to order posts in a forum channel
|
||||
* The default sort order type used to order posts in a thread-only channel
|
||||
*
|
||||
* Channel types: forum
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
default_sort_order?: SortOrderType | null | undefined;
|
||||
/**
|
||||
@@ -176,6 +181,12 @@ export interface RESTPatchAPIChannelJSONBody {
|
||||
* Channel types: forum
|
||||
*/
|
||||
default_forum_layout?: ForumLayoutType | undefined;
|
||||
/**
|
||||
* The ids of the set of tags that have been applied to a thread-only channel; limited to 5
|
||||
*
|
||||
* Channel types: forum, media
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -235,6 +246,24 @@ export type APIMessageReferenceSend = StrictPartial<APIMessageReference> &
|
||||
fail_if_not_exists?: boolean | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
export interface RESTAPIAttachment {
|
||||
/**
|
||||
* Attachment id or a number that matches `n` in `files[n]`
|
||||
*/
|
||||
id: Snowflake | number;
|
||||
/**
|
||||
* Name of the file
|
||||
*/
|
||||
filename?: string | undefined;
|
||||
/**
|
||||
* Description of the file
|
||||
*/
|
||||
description?: string | undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#create-message
|
||||
*/
|
||||
@@ -292,7 +321,7 @@ export interface RESTPostAPIChannelMessageJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -336,7 +365,7 @@ export type RESTDeleteAPIChannelMessageOwnReaction = never;
|
||||
*/
|
||||
export type RESTDeleteAPIChannelMessageUserReactionResult = never;
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#get-reactions
|
||||
*/
|
||||
export interface RESTGetAPIChannelMessageReactionUsersQuery {
|
||||
@@ -411,7 +440,7 @@ export interface RESTPatchAPIChannelMessageJSONBody {
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* The components to include with the message
|
||||
*
|
||||
@@ -630,25 +659,25 @@ export interface RESTPostAPIChannelMessagesThreadsJSONBody {
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsJSONBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: RESTPostAPIChannelMessageJSONBody;
|
||||
/**
|
||||
* The IDs of the set of tags that have been applied to a thread in a forum channel; limited to 5
|
||||
* The IDs of the set of tags to apply to the thread; limited to 5
|
||||
*/
|
||||
applied_tags?: Snowflake[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-channel
|
||||
* https://discord.com/developers/docs/resources/channel#start-thread-in-forum-or-media-channel
|
||||
*/
|
||||
export type RESTPostAPIGuildForumThreadsFormDataBody = RESTPostAPIChannelMessagesThreadsJSONBody & {
|
||||
/**
|
||||
* First message in the forum thread
|
||||
* The initial message of the thread
|
||||
*/
|
||||
message: string;
|
||||
};
|
||||
@@ -672,7 +701,7 @@ export interface RESTPostAPIChannelThreadsJSONBody extends RESTPostAPIChannelMes
|
||||
*
|
||||
* @default ChannelType.PrivateThread
|
||||
*/
|
||||
type?: ChannelType.AnnouncementThread | ChannelType.PublicThread | ChannelType.PrivateThread | undefined;
|
||||
type?: ThreadChannelType | undefined;
|
||||
/**
|
||||
* Whether non-moderators can add other non-moderators to the thread; only available when creating a private thread
|
||||
*/
|
||||
@@ -732,7 +761,7 @@ export interface RESTGetAPIChannelThreadMembersQuery {
|
||||
*/
|
||||
export type RESTGetAPIChannelThreadMembersResult = APIThreadMember[];
|
||||
|
||||
/*
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/channel#list-public-archived-threads
|
||||
*/
|
||||
export interface RESTGetAPIChannelThreadsArchivedQuery {
|
||||
|
||||
@@ -449,7 +449,7 @@ export interface RESTPutAPIGuildMemberJSONBody {
|
||||
deaf?: boolean | undefined;
|
||||
}
|
||||
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | never;
|
||||
export type RESTPutAPIGuildMemberResult = APIGuildMember | undefined;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-member
|
||||
@@ -932,3 +932,16 @@ export type RESTPatchAPIGuildWelcomeScreenResult = APIGuildWelcomeScreen;
|
||||
* https://discord.com/developers/docs/resources/guild#get-guild-onboarding
|
||||
*/
|
||||
export type RESTGetAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingJSONBody = Pick<
|
||||
APIGuildOnboarding,
|
||||
'default_channel_ids' | 'enabled' | 'mode' | 'prompts'
|
||||
>;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/guild#modify-guild-onboarding
|
||||
*/
|
||||
export type RESTPutAPIGuildOnboardingResult = APIGuildOnboarding;
|
||||
|
||||
@@ -839,6 +839,16 @@ export const Routes = {
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*/
|
||||
stickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/sticker-packs`
|
||||
*
|
||||
* @deprecated Use {@link Routes.stickerPacks} instead.
|
||||
*/
|
||||
nitroStickerPacks() {
|
||||
return '/sticker-packs' as const;
|
||||
},
|
||||
@@ -892,6 +902,7 @@ export const Routes = {
|
||||
/**
|
||||
* Route for:
|
||||
* - GET `/guilds/${guild.id}/onboarding`
|
||||
* - PUT `/guilds/${guild.id}/onboarding`
|
||||
*/
|
||||
guildOnboarding(guildId: Snowflake) {
|
||||
return `/guilds/${guildId}/onboarding` as const;
|
||||
|
||||
@@ -6,12 +6,19 @@ import type { APISticker, APIStickerPack } from '../../payloads/v9/index';
|
||||
export type RESTGetAPIStickerResult = APISticker;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-nitro-sticker-packs
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*/
|
||||
export interface RESTGetNitroStickerPacksResult {
|
||||
export interface RESTGetStickerPacksResult {
|
||||
sticker_packs: APIStickerPack[];
|
||||
}
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-sticker-packs
|
||||
*
|
||||
* @deprecated Use `RESTGetStickerPacksResult` instead
|
||||
*/
|
||||
export type RESTGetNitroStickerPacksResult = RESTGetStickerPacksResult;
|
||||
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/sticker#list-guild-stickers
|
||||
*/
|
||||
|
||||
@@ -5,11 +5,11 @@ import type {
|
||||
APIEmbed,
|
||||
APIMessage,
|
||||
APIWebhook,
|
||||
APIAttachment,
|
||||
MessageFlags,
|
||||
APIMessageActionRowComponent,
|
||||
} from '../../payloads/v9/index';
|
||||
import type { AddUndefinedToPossiblyUndefinedPropertiesOfInterface, Nullable } from '../../utils/internals';
|
||||
import type { RESTAPIAttachment } from './channel';
|
||||
/**
|
||||
* https://discord.com/developers/docs/resources/webhook#create-webhook
|
||||
*/
|
||||
@@ -139,7 +139,7 @@ export interface RESTPostAPIWebhookWithTokenJSONBody {
|
||||
/**
|
||||
* Attachment objects with filename and description
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id' | 'description'> & Partial<Pick<APIAttachment, 'filename'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
/**
|
||||
* Message flags combined as a bitfield
|
||||
*/
|
||||
@@ -257,7 +257,7 @@ export type RESTPatchAPIWebhookWithTokenMessageJSONBody = AddUndefinedToPossibly
|
||||
*
|
||||
* See https://discord.com/developers/docs/resources/channel#attachment-object
|
||||
*/
|
||||
attachments?: (Pick<APIAttachment, 'id'> & Partial<Pick<APIAttachment, 'filename' | 'description'>>)[] | undefined;
|
||||
attachments?: RESTAPIAttachment[] | undefined;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -81,7 +81,8 @@ const config = {
|
||||
},
|
||||
slug: 'discord-api-types'
|
||||
}
|
||||
]
|
||||
],
|
||||
gitRefName: 'main',
|
||||
})
|
||||
]
|
||||
],
|
||||
|
||||
12
website/package-lock.json
generated
12
website/package-lock.json
generated
@@ -20582,9 +20582,9 @@
|
||||
"integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw=="
|
||||
},
|
||||
"node_modules/word-wrap": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
|
||||
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
|
||||
"integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==",
|
||||
"devOptional": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
@@ -35981,9 +35981,9 @@
|
||||
"integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw=="
|
||||
},
|
||||
"word-wrap": {
|
||||
"version": "1.2.3",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
|
||||
"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
|
||||
"version": "1.2.4",
|
||||
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
|
||||
"integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==",
|
||||
"devOptional": true
|
||||
},
|
||||
"wordwrap": {
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -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.48"}]
|
||||
[{"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.57"}]
|
||||
1
website/versioned_docs/version-0.37.57/api-typedoc.json
Normal file
1
website/versioned_docs/version-0.37.57/api-typedoc.json
Normal file
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 126 KiB |
@@ -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.49"}]
|
||||
[{"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.58"}]
|
||||
1
website/versioned_docs/version-0.37.58/api-typedoc.json
Normal file
1
website/versioned_docs/version-0.37.58/api-typedoc.json
Normal file
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 126 KiB |
@@ -1,4 +1,4 @@
|
||||
[
|
||||
"0.37.49",
|
||||
"0.37.48"
|
||||
"0.37.58",
|
||||
"0.37.57"
|
||||
]
|
||||
Reference in New Issue
Block a user