feat(Webhook): add '(edit|delete)Message' methods (#5223)

This commit is contained in:
izexi
2021-04-03 14:06:18 +01:00
committed by GitHub
parent 404ce57bcc
commit 7cabc1c490
2 changed files with 104 additions and 13 deletions

52
typings/index.d.ts vendored
View File

@@ -1771,6 +1771,34 @@ declare module 'discord.js' {
public client: this;
public options: WebhookClientOptions;
public token: string;
public editMessage(
message: MessageResolvable,
content: APIMessageContentResolvable | APIMessage | MessageEmbed | MessageEmbed[],
options?: WebhookEditMessageOptions,
): Promise<WebhookRawMessageResponse>;
public editMessage(
message: MessageResolvable,
options: WebhookEditMessageOptions,
): Promise<WebhookRawMessageResponse>;
public send(
content: APIMessageContentResolvable | (WebhookMessageOptions & { split?: false }) | MessageAdditions,
): Promise<WebhookRawMessageResponse>;
public send(options: WebhookMessageOptions & { split: true | SplitOptions }): Promise<WebhookRawMessageResponse[]>;
public send(
options: WebhookMessageOptions | APIMessage,
): Promise<WebhookRawMessageResponse | WebhookRawMessageResponse[]>;
public send(
content: StringResolvable,
options: (WebhookMessageOptions & { split?: false }) | MessageAdditions,
): Promise<WebhookRawMessageResponse>;
public send(
content: StringResolvable,
options: WebhookMessageOptions & { split: true | SplitOptions },
): Promise<WebhookRawMessageResponse[]>;
public send(
content: StringResolvable,
options: WebhookMessageOptions,
): Promise<WebhookRawMessageResponse | WebhookRawMessageResponse[]>;
}
export class WebSocketManager extends EventEmitter {
@@ -2095,7 +2123,17 @@ declare module 'discord.js' {
readonly createdTimestamp: number;
readonly url: string;
delete(reason?: string): Promise<void>;
deleteMessage(message: MessageResolvable): Promise<void>;
edit(options: WebhookEditData): Promise<Webhook>;
editMessage(
message: MessageResolvable,
content: APIMessageContentResolvable | APIMessage | MessageEmbed | MessageEmbed[],
options?: WebhookEditMessageOptions,
): Promise<Message | WebhookRawMessageResponse>;
editMessage(
message: MessageResolvable,
options: WebhookEditMessageOptions,
): Promise<Message | WebhookRawMessageResponse>;
send(
content: APIMessageContentResolvable | (WebhookMessageOptions & { split?: false }) | MessageAdditions,
): Promise<Message | WebhookRawMessageResponse>;
@@ -3337,17 +3375,9 @@ declare module 'discord.js' {
reason?: string;
}
interface WebhookMessageOptions {
username?: string;
avatarURL?: string;
tts?: boolean;
nonce?: string;
embeds?: (MessageEmbed | object)[];
allowedMentions?: MessageMentionOptions;
files?: (FileOptions | BufferResolvable | Stream | MessageAttachment)[];
code?: string | boolean;
split?: boolean | SplitOptions;
}
type WebhookEditMessageOptions = Pick<WebhookMessageOptions, 'content' | 'embeds' | 'files' | 'allowedMentions'>;
type WebhookMessageOptions = Omit<MessageOptions, 'embed'> & { embeds?: (MessageEmbed | object)[] };
type WebhookRawMessageResponse = Omit<APIRawMessage, 'author'> & {
author: {