diff --git a/frontend/src/hooks/i18n.ts b/frontend/src/hooks/i18n.ts
index 704d5f9..e2f4606 100644
--- a/frontend/src/hooks/i18n.ts
+++ b/frontend/src/hooks/i18n.ts
@@ -6,8 +6,8 @@ type MessageType = typeof messages;
 type MessageKeys = keyof MessageType;
 
 type MessageParams<T extends MessageKeys> = MessageType[T]["en"] extends (
-  ...args: any
-) => any
+  ...args: any // eslint-disable-line @typescript-eslint/no-explicit-any
+) => any // eslint-disable-line @typescript-eslint/no-explicit-any
   ? Parameters<MessageType[T]["en"]>
   : [];
 
@@ -19,7 +19,7 @@ export function useI18n() {
     ...args: MessageParams<T>
   ): string {
     const message = messages[key][lang] ?? messages[key]["en"];
-    // @ts-ignore
+    // @ts-expect-error see https://stackoverflow.com/a/75086839
     return typeof message === "function" ? message(...args) : message;
   };
 }
diff --git a/frontend/src/lib/messages.ts b/frontend/src/lib/messages.ts
index 90340c6..a821afc 100644
--- a/frontend/src/lib/messages.ts
+++ b/frontend/src/lib/messages.ts
@@ -19,5 +19,5 @@ export const messages = {
   },
 } as const satisfies Record<
   string,
-  AllLanguages<string | ((...args: any) => string)>
+  AllLanguages<string> | AllLanguages<(...args: any) => string> // eslint-disable-line @typescript-eslint/no-explicit-any
 >;