No typescript errors
diff --git a/src/commands/settings/logs/events.ts b/src/commands/settings/logs/events.ts
index 6d823b2..fbe79fa 100644
--- a/src/commands/settings/logs/events.ts
+++ b/src/commands/settings/logs/events.ts
@@ -1,11 +1,11 @@
 import { LoadingEmbed } from "../../../utils/defaults.js";
 import Discord, { CommandInteraction, Message, ActionRowBuilder, ButtonBuilder, ButtonStyle, StringSelectMenuBuilder, EmbedBuilder, StringSelectMenuInteraction } from "discord.js";
-import type { SlashCommandSubcommandBuilder } from "@discordjs/builders";
+import { SlashCommandSubcommandBuilder, StringSelectMenuOptionBuilder } from "@discordjs/builders";
 import EmojiEmbed from "../../../utils/generateEmojiEmbed.js";
 import client from "../../../utils/client.js";
 import { toHexArray, toHexInteger } from "../../../utils/calculate.js";
 
-const logs = {
+const logs: Record<string, string> = {
     channelUpdate: "Channels created, deleted or modified",
     emojiUpdate: "Server emojis modified",
     stickerUpdate: "Server stickers modified",
@@ -42,6 +42,18 @@
     do {
         const config = await client.database.guilds.read(interaction.guild!.id);
         const converted = toHexArray(config.logging.logs.toLog);
+        const selectPane = new StringSelectMenuBuilder()
+            .setPlaceholder("Set events to log")
+            .setMaxValues(Object.keys(logs).length)
+            .setCustomId("logs")
+            .setMinValues(0)
+        Object.keys(logs).map((e, i) => {
+            selectPane.addOptions(new StringSelectMenuOptionBuilder()
+                .setLabel(logs[e]!)
+                .setValue(i.toString())
+                .setDefault(converted.includes(e))
+            )
+        });
         m = (await interaction.editReply({
             embeds: [
                 new EmojiEmbed()
@@ -53,20 +65,7 @@
                     .setEmoji("CHANNEL.TEXT.CREATE")
             ],
             components: [
-                new ActionRowBuilder<StringSelectMenuBuilder>().addComponents([
-                    new StringSelectMenuBuilder()
-                        .setPlaceholder("Set events to log")
-                        .setMaxValues(Object.keys(logs).length)
-                        .setCustomId("logs")
-                        .setMinValues(0)
-                        .setOptions(
-                            Object.keys(logs).map((e, i) => ({
-                                label: (logs as any)[e],
-                                value: i.toString(),
-                                default: converted.includes(e)
-                            }))
-                        )
-                ]),
+                new ActionRowBuilder<StringSelectMenuBuilder>().addComponents(selectPane),
                 new ActionRowBuilder<ButtonBuilder>().addComponents([
                     new ButtonBuilder().setLabel("Select all").setStyle(ButtonStyle.Primary).setCustomId("all"),
                     new ButtonBuilder().setLabel("Select none").setStyle(ButtonStyle.Danger).setCustomId("none")
diff --git a/src/commands/settings/tickets.ts b/src/commands/settings/tickets.ts
index ff545aa..892a420 100644
--- a/src/commands/settings/tickets.ts
+++ b/src/commands/settings/tickets.ts
@@ -7,7 +7,6 @@
     GuildChannel,
     Message,
     ActionRowBuilder,
-    Component,
     ButtonBuilder,
     MessageComponentInteraction,
     StringSelectMenuBuilder,
@@ -74,9 +73,9 @@
     })) as Message;
     const options = {
         enabled: (interaction.options.get("enabled")?.value as string).startsWith("yes") as boolean | null,
-        category: interaction.options.get("category")?.channel,
-        maxtickets: interaction.options.get("maxticketsperuser")?.value as number,
-        supportping: interaction.options.get("supportrole")?.role as Role
+        category: interaction.options.get("category")?.channel as Discord.CategoryChannel | null,
+        maxtickets: interaction.options.get("maxticketsperuser")?.value as number | null,
+        supportping: interaction.options.get("supportrole")?.role as Role | null
     };
     if (options.enabled !== null || options.category || options.maxtickets || options.supportping) {
         if (options.category) {
@@ -94,7 +93,6 @@
                     ]
                 });
             }
-            if (!channel) return;
             channel = channel as Discord.CategoryChannel;
             if (channel.guild.id !== interaction.guild.id)
                 return interaction.editReply({
@@ -202,20 +200,20 @@
             });
         }
     }
-    let data = await client.database.guilds.read(interaction.guild.id);
-    data.tickets.customTypes = (data.tickets.customTypes || []).filter(
+    const data = await client.database.guilds.read(interaction.guild.id);
+    data.tickets.customTypes = (data.tickets.customTypes ?? []).filter(
         (value: string, index: number, array: string[]) => array.indexOf(value) === index
     );
     let lastClicked = "";
-    let embed: EmojiEmbed = new EmojiEmbed();
-    let compiledData = {
+    const embed: EmojiEmbed = new EmojiEmbed();
+    const compiledData = {
         enabled: data.tickets.enabled,
         category: data.tickets.category,
         maxTickets: data.tickets.maxTickets,
         supportRole: data.tickets.supportRole,
         useCustom: data.tickets.useCustom,
         types: data.tickets.types,
-        customTypes: data.tickets.customTypes
+        customTypes: data.tickets.customTypes as string[] | null
     };
     let timedOut = false;
     while (!timedOut) {
@@ -485,29 +483,27 @@
                         continue;
                     }
                     out = out as ModalSubmitInteraction;
-                    if (out.fields) {
-                        const title = out.fields.getTextInputValue("title");
-                        const description = out.fields.getTextInputValue("description");
-                        await interaction.channel!.send({
-                            embeds: [
-                                new EmojiEmbed()
-                                    .setTitle(title)
-                                    .setDescription(description)
-                                    .setStatus("Success")
-                                    .setEmoji("GUILD.TICKET.OPEN")
-                            ],
-                            components: [
-                                new ActionRowBuilder<ButtonBuilder>().addComponents([
-                                    new ButtonBuilder()
-                                        .setLabel("Create Ticket")
-                                        .setEmoji(getEmojiByName("TICKETS.SUGGESTION", "id"))
-                                        .setStyle(ButtonStyle.Success)
-                                        .setCustomId("createticket")
-                                ])
-                            ]
-                        });
-                        templateSelected = true;
-                    }
+                    const title = out.fields.getTextInputValue("title");
+                    const description = out.fields.getTextInputValue("description");
+                    await interaction.channel!.send({
+                        embeds: [
+                            new EmojiEmbed()
+                                .setTitle(title)
+                                .setDescription(description)
+                                .setStatus("Success")
+                                .setEmoji("GUILD.TICKET.OPEN")
+                        ],
+                        components: [
+                            new ActionRowBuilder<ButtonBuilder>().addComponents([
+                                new ButtonBuilder()
+                                    .setLabel("Create Ticket")
+                                    .setEmoji(getEmojiByName("TICKETS.SUGGESTION", "id"))
+                                    .setStyle(ButtonStyle.Success)
+                                    .setCustomId("createticket")
+                            ])
+                        ]
+                    });
+                    templateSelected = true;
                 }
             }
         } else if ((i.component as ButtonComponent).customId === "enabled") {
@@ -516,7 +512,7 @@
             });
             compiledData.enabled = !compiledData.enabled;
         } else if ((i.component as ButtonComponent).customId === "manageTypes") {
-            data = await manageTypes(interaction, data, m as Message); //TODO: Fix this
+            data.tickets = await manageTypes(interaction, data.tickets, m as Message);
         }
     }
     await interaction.editReply({
@@ -713,24 +709,20 @@
                 continue;
             }
             out = out as ModalSubmitInteraction;
-            if (out.fields) {
-                let toAdd = out.fields.getTextInputValue("type");
-                if (!toAdd) {
-                    continue;
-                }
-                toAdd = toAdd.substring(0, 80);
-                try {
-                    await client.database.guilds.append(interaction.guild!.id, "tickets.customTypes", toAdd);
-                } catch {
-                    continue;
-                }
-                data.customTypes = data.customTypes ?? [];
-                if (!data.customTypes.includes(toAdd)) {
-                    data.customTypes.push(toAdd);
-                }
-            } else {
+            let toAdd = out.fields.getTextInputValue("type");
+            if (!toAdd) {
                 continue;
             }
+            toAdd = toAdd.substring(0, 80);
+            try {
+                await client.database.guilds.append(interaction.guild!.id, "tickets.customTypes", toAdd);
+            } catch {
+                continue;
+            }
+            data.customTypes = data.customTypes ?? [];
+            if (!data.customTypes.includes(toAdd)) {
+                data.customTypes.push(toAdd);
+            }
         } else if ((i.component as ButtonComponent).customId === "switchToDefault") {
             i.deferUpdate();
             await client.database.guilds.write(interaction.guild!.id, { "tickets.useCustom": false }, []);