diff --git a/src/config/types.discord.ts b/src/config/types.discord.ts index ba65d1c8d1..f294217854 100644 --- a/src/config/types.discord.ts +++ b/src/config/types.discord.ts @@ -178,9 +178,9 @@ export type DiscordAccountConfig = { /** Bot activity status text (e.g. "Watching X"). */ activity?: string; /** Bot status (online|dnd|idle|invisible). Default: online. */ - status?: "online" | "dnd" | "idle" | "invisible" | "offline"; + status?: "online" | "dnd" | "idle" | "invisible"; /** Activity type (0=Game, 1=Streaming, 2=Listening, 3=Watching, 5=Competing). Default: 3 (Watching). */ - activityType?: number; + activityType?: 0 | 1 | 2 | 3 | 5; /** Streaming URL (Twitch/YouTube). Required if activityType=1. */ activityUrl?: string; }; diff --git a/src/config/zod-schema.providers-core.ts b/src/config/zod-schema.providers-core.ts index dfd2fb0ba3..f8c246cfbc 100644 --- a/src/config/zod-schema.providers-core.ts +++ b/src/config/zod-schema.providers-core.ts @@ -333,8 +333,10 @@ export const DiscordAccountSchema = z .optional(), responsePrefix: z.string().optional(), activity: z.string().optional(), - status: z.enum(["online", "dnd", "idle", "invisible", "offline"]).optional(), - activityType: z.number().int().min(0).max(5).optional(), + status: z.enum(["online", "dnd", "idle", "invisible"]).optional(), + activityType: z + .union([z.literal(0), z.literal(1), z.literal(2), z.literal(3), z.literal(5)]) + .optional(), activityUrl: z.string().optional(), }) .strict();