styling fixes and some typing
diff --git a/src/reflex/welcome.ts b/src/reflex/welcome.ts
index 56391ec..36a93fb 100644
--- a/src/reflex/welcome.ts
+++ b/src/reflex/welcome.ts
@@ -1,9 +1,12 @@
+// @ts-expect-error
+import type { HaikuClient } from "jshaiku";
 import convertCurlyBracketString from "../utils/convertCurlyBracketString.js";
 import client from "../utils/client.js";
 import EmojiEmbed from "../utils/generateEmojiEmbed.js";
+import { GuildChannel, GuildMember, BaseGuildTextChannel } from "discord.js";
 
-export async function callback(_, member) {
-    if (member.bot) return;
+export async function callback(_client: HaikuClient, member: GuildMember) {
+    if (member.user.bot) return;
     const config = await client.database.guilds.read(member.guild.id);
     if (!config.welcome.enabled) return;
 
@@ -22,9 +25,10 @@
                     embeds: [new EmojiEmbed().setDescription(string).setStatus("Success")]
                 });
             } else {
-                const channel = await member.guild.channels.fetch(config.welcome.channel);
+                const channel: GuildChannel | null = await member.guild.channels.fetch(config.welcome.channel);
+                if (!channel) return; // TODO: SEN
+                if (!(channel instanceof BaseGuildTextChannel)) return;
                 if (channel.guild.id !== member.guild.id) return;
-                if (!channel) return;
                 try {
                     await channel.send({
                         embeds: [new EmojiEmbed().setDescription(string).setStatus("Success")],