diff --git a/src/commands/nucleus/guide.ts b/src/commands/nucleus/guide.ts
index ffc441a..d3370ba 100644
--- a/src/commands/nucleus/guide.ts
+++ b/src/commands/nucleus/guide.ts
@@ -1,11 +1,12 @@
-import { SlashCommandSubcommandBuilder } from "@discordjs/builders";
+import type { CommandInteraction } from 'discord.js';
+import type { SlashCommandSubcommandBuilder } from "@discordjs/builders";
 import guide from "../../reflex/guide.js";
 
 const command = (builder: SlashCommandSubcommandBuilder) =>
     builder.setName("guide").setDescription("Shows the welcome guide for the bot");
 
-const callback = async (interaction) => {
-    guide(interaction.guild, interaction);
+const callback = async (interaction: CommandInteraction) => {
+    guide(interaction.guild!, interaction);
 };
 
 const check = () => {
