diff --git a/src/Discord.Net.Core/Entities/Channels/IMessageChannel.cs b/src/Discord.Net.Core/Entities/Channels/IMessageChannel.cs
index a465b3ad8..a1df5b4c7 100644
--- a/src/Discord.Net.Core/Entities/Channels/IMessageChannel.cs
+++ b/src/Discord.Net.Core/Entities/Channels/IMessageChannel.cs
@@ -29,10 +29,6 @@ namespace Discord
CacheMode mode = CacheMode.AllowDownload, RequestOptions options = null);
/// Gets a collection of pinned messages in this channel.
Task> GetPinnedMessagesAsync(RequestOptions options = null);
- /// Bulk deletes multiple messages.
- Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null);
- /// Bulk deletes multiple messages.
- Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null);
/// Broadcasts the "user is typing" message to all users in this channel, lasting 10 seconds.
Task TriggerTypingAsync(RequestOptions options = null);
diff --git a/src/Discord.Net.Core/Entities/Channels/ITextChannel.cs b/src/Discord.Net.Core/Entities/Channels/ITextChannel.cs
index b2b7e491f..be4dd0260 100644
--- a/src/Discord.Net.Core/Entities/Channels/ITextChannel.cs
+++ b/src/Discord.Net.Core/Entities/Channels/ITextChannel.cs
@@ -1,4 +1,5 @@
using System;
+using System.Collections.Generic;
using System.Threading.Tasks;
namespace Discord
@@ -11,6 +12,11 @@ namespace Discord
/// Gets the current topic for this text channel.
string Topic { get; }
+ /// Bulk deletes multiple messages.
+ Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null);
+ /// Bulk deletes multiple messages.
+ Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null);
+
/// Modifies this text channel.
Task ModifyAsync(Action func, RequestOptions options = null);
}
diff --git a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
index d61b5d14a..8dcb8c284 100644
--- a/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/ChannelHelper.cs
@@ -181,7 +181,7 @@ namespace Discord.Rest
return RestUserMessage.Create(client, channel, client.CurrentUser, model);
}
- public static async Task DeleteMessagesAsync(IMessageChannel channel, BaseDiscordClient client,
+ public static async Task DeleteMessagesAsync(ITextChannel channel, BaseDiscordClient client,
IEnumerable messageIds, RequestOptions options)
{
var msgs = messageIds.ToArray();
diff --git a/src/Discord.Net.Rest/Entities/Channels/RestDMChannel.cs b/src/Discord.Net.Rest/Entities/Channels/RestDMChannel.cs
index 8a31da3f1..d41441967 100644
--- a/src/Discord.Net.Rest/Entities/Channels/RestDMChannel.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/RestDMChannel.cs
@@ -72,11 +72,6 @@ namespace Discord.Rest
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.Rest/Entities/Channels/RestGroupChannel.cs b/src/Discord.Net.Rest/Entities/Channels/RestGroupChannel.cs
index 44c118fee..aa5c0f7dc 100644
--- a/src/Discord.Net.Rest/Entities/Channels/RestGroupChannel.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/RestGroupChannel.cs
@@ -85,11 +85,6 @@ namespace Discord.Rest
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.Rest/Entities/Channels/RpcVirtualMessageChannel.cs b/src/Discord.Net.Rest/Entities/Channels/RpcVirtualMessageChannel.cs
index 7043c8c76..eb807423f 100644
--- a/src/Discord.Net.Rest/Entities/Channels/RpcVirtualMessageChannel.cs
+++ b/src/Discord.Net.Rest/Entities/Channels/RpcVirtualMessageChannel.cs
@@ -42,11 +42,6 @@ namespace Discord.Rest
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.Rpc/Entities/Channels/RpcDMChannel.cs b/src/Discord.Net.Rpc/Entities/Channels/RpcDMChannel.cs
index da9bce700..42e590aca 100644
--- a/src/Discord.Net.Rpc/Entities/Channels/RpcDMChannel.cs
+++ b/src/Discord.Net.Rpc/Entities/Channels/RpcDMChannel.cs
@@ -53,11 +53,6 @@ namespace Discord.Rpc
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.Rpc/Entities/Channels/RpcGroupChannel.cs b/src/Discord.Net.Rpc/Entities/Channels/RpcGroupChannel.cs
index d449688a4..1c9355047 100644
--- a/src/Discord.Net.Rpc/Entities/Channels/RpcGroupChannel.cs
+++ b/src/Discord.Net.Rpc/Entities/Channels/RpcGroupChannel.cs
@@ -56,11 +56,6 @@ namespace Discord.Rpc
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.WebSocket/Entities/Channels/SocketDMChannel.cs b/src/Discord.Net.WebSocket/Entities/Channels/SocketDMChannel.cs
index 322a99496..00cef60f8 100644
--- a/src/Discord.Net.WebSocket/Entities/Channels/SocketDMChannel.cs
+++ b/src/Discord.Net.WebSocket/Entities/Channels/SocketDMChannel.cs
@@ -76,11 +76,6 @@ namespace Discord.WebSocket
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)
diff --git a/src/Discord.Net.WebSocket/Entities/Channels/SocketGroupChannel.cs b/src/Discord.Net.WebSocket/Entities/Channels/SocketGroupChannel.cs
index dc1853e73..92a93a903 100644
--- a/src/Discord.Net.WebSocket/Entities/Channels/SocketGroupChannel.cs
+++ b/src/Discord.Net.WebSocket/Entities/Channels/SocketGroupChannel.cs
@@ -104,11 +104,6 @@ namespace Discord.WebSocket
public Task SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, RequestOptions options = null)
=> ChannelHelper.SendFileAsync(this, Discord, stream, filename, text, isTTS, options);
- public Task DeleteMessagesAsync(IEnumerable messages, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messages.Select(x => x.Id), options);
- public Task DeleteMessagesAsync(IEnumerable messageIds, RequestOptions options = null)
- => ChannelHelper.DeleteMessagesAsync(this, Discord, messageIds, options);
-
public Task TriggerTypingAsync(RequestOptions options = null)
=> ChannelHelper.TriggerTypingAsync(this, Discord, options);
public IDisposable EnterTypingState(RequestOptions options = null)