mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-10 00:23:30 +01:00
feat: add {add,remove}GroupDMRecipient methods (#11135)
* feat: add `{add,delete}GroupDMRecipient methods`
* fix: requested changes
---------
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This commit is contained in:
@@ -1,10 +1,9 @@
|
||||
/* eslint-disable jsdoc/check-param-names */
|
||||
|
||||
import { makeURLSearchParams, type RawFile, type REST, type RequestData } from '@discordjs/rest';
|
||||
import { makeURLSearchParams, type RawFile, type RequestData, type REST } from '@discordjs/rest';
|
||||
import {
|
||||
Routes,
|
||||
type RESTPostAPIChannelWebhookJSONBody,
|
||||
type RESTPostAPIChannelWebhookResult,
|
||||
type APIThreadChannel,
|
||||
type RESTDeleteAPIChannelResult,
|
||||
type RESTGetAPIChannelInvitesResult,
|
||||
type RESTGetAPIChannelMessageReactionUsersQuery,
|
||||
@@ -17,8 +16,8 @@ import {
|
||||
type RESTGetAPIChannelThreadsArchivedQuery,
|
||||
type RESTGetAPIChannelUsersThreadsArchivedResult,
|
||||
type RESTGetAPIChannelWebhooksResult,
|
||||
type RESTPatchAPIChannelMessageJSONBody,
|
||||
type RESTPatchAPIChannelJSONBody,
|
||||
type RESTPatchAPIChannelMessageJSONBody,
|
||||
type RESTPatchAPIChannelMessageResult,
|
||||
type RESTPatchAPIChannelResult,
|
||||
type RESTPostAPIChannelFollowersResult,
|
||||
@@ -27,12 +26,14 @@ import {
|
||||
type RESTPostAPIChannelMessageCrosspostResult,
|
||||
type RESTPostAPIChannelMessageJSONBody,
|
||||
type RESTPostAPIChannelMessageResult,
|
||||
type RESTPutAPIChannelPermissionJSONBody,
|
||||
type Snowflake,
|
||||
type RESTPostAPIChannelThreadsJSONBody,
|
||||
type RESTPostAPIChannelThreadsResult,
|
||||
type APIThreadChannel,
|
||||
type RESTPostAPIChannelWebhookJSONBody,
|
||||
type RESTPostAPIChannelWebhookResult,
|
||||
type RESTPostAPIGuildForumThreadsJSONBody,
|
||||
type RESTPutAPIChannelPermissionJSONBody,
|
||||
type RESTPutAPIChannelRecipientJSONBody,
|
||||
type Snowflake,
|
||||
} from 'discord-api-types/v10';
|
||||
|
||||
export interface StartForumThreadOptions extends RESTPostAPIGuildForumThreadsJSONBody {
|
||||
@@ -593,4 +594,43 @@ export class ChannelsAPI {
|
||||
signal,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a recipient to a group DM channel
|
||||
*
|
||||
* @see {@link https://discord.com/developers/docs/resources/channel#group-dm-add-recipient}
|
||||
* @param channelId - The id of the channel to add the recipient to
|
||||
* @param userId - The id of the user to add as a recipient
|
||||
* @param body - The data for adding the recipient
|
||||
* @param options - The options for adding the recipient
|
||||
*/
|
||||
public async addGroupDMRecipient(
|
||||
channelId: Snowflake,
|
||||
userId: Snowflake,
|
||||
body: RESTPutAPIChannelRecipientJSONBody,
|
||||
{ signal }: Pick<RequestData, 'signal'> = {},
|
||||
) {
|
||||
await this.rest.put(Routes.channelRecipient(channelId, userId), {
|
||||
body,
|
||||
signal,
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes a recipient from a group DM channel
|
||||
*
|
||||
* @see {@link https://discord.com/developers/docs/resources/channel#group-dm-remove-recipient}
|
||||
* @param channelId - The id of the channel to remove the recipient from
|
||||
* @param userId - The id of the user to remove as a recipient
|
||||
* @param options - The options for removing the recipient
|
||||
*/
|
||||
public async removeGroupDMRecipient(
|
||||
channelId: Snowflake,
|
||||
userId: Snowflake,
|
||||
{ signal }: Pick<RequestData, 'signal'> = {},
|
||||
) {
|
||||
await this.rest.delete(Routes.channelRecipient(channelId, userId), {
|
||||
signal,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user