const handleBulkDelete = async (
channel: TextChannel,
amountToDelete: number,
target?: GuildMember
) => {
const messagesToDelete = await channel.messages.fetch();
const filteredMessages: Message[] = [];
if (target) {
let i = 0;
messagesToDelete.filter((msg: Message) => {
if (msg.author.id === target.id && i < amountToDelete) {
filteredMessages.push(msg);
i++;
}
});
if (filteredMessages.length === 0) return 0;
} else {
filteredMessages.push(...messagesToDelete.first(amountToDelete));
}
if (filteredMessages.length === 0) return 0;
await channel.bulkDelete(filteredMessages, true);
return filteredMessages.length;
};
const handleBulkDelete = async (
channel: TextChannel,
amountToDelete: number,
target?: GuildMember
) => {
const messagesToDelete = await channel.messages.fetch();
const filteredMessages: Message[] = [];
if (target) {
let i = 0;
messagesToDelete.filter((msg: Message) => {
if (msg.author.id === target.id && i < amountToDelete) {
filteredMessages.push(msg);
i++;
}
});
if (filteredMessages.length === 0) return 0;
} else {
filteredMessages.push(...messagesToDelete.first(amountToDelete));
}
if (filteredMessages.length === 0) return 0;
await channel.bulkDelete(filteredMessages, true);
return filteredMessages.length;
};