diff --git a/src/api/util/handlers/Message.ts b/src/api/util/handlers/Message.ts
index d760d27c..07ed11ad 100644
--- a/src/api/util/handlers/Message.ts
+++ b/src/api/util/handlers/Message.ts
@@ -21,6 +21,13 @@ import {
Role,
ROLE_MENTION,
User,
+ Application,
+ Webhook,
+ Attachment,
+ Config,
+ MessageCreateSchema,
+ PluginEventHandler,
+ PreMessageEventArgs,
USER_MENTION,
Webhook
} from "@fosscord/util";
@@ -205,6 +212,10 @@ export async function postHandleMessage(message: Message) {
export async function sendMessage(opts: MessageOptions) {
const message = await handleMessage({ ...opts, timestamp: new Date() });
+ if((await PluginEventHandler.preMessageEvent({
+ message
+ } as PreMessageEventArgs)).filter(x=>x.cancel).length > 0) return;
+
//TODO: check this, removed toJSON call
await Promise.all([
Message.insert(message),
|