From e3af39bdbd6229b5b1b2456519491c86b26b6d3f Mon Sep 17 00:00:00 2001 From: thierryverse Date: Tue, 18 Nov 2025 11:33:30 +0200 Subject: [PATCH] add podcast types --- .../contracts/types/podcast.types.ts | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 surfsense_web/contracts/types/podcast.types.ts diff --git a/surfsense_web/contracts/types/podcast.types.ts b/surfsense_web/contracts/types/podcast.types.ts new file mode 100644 index 000000000..a1e091214 --- /dev/null +++ b/surfsense_web/contracts/types/podcast.types.ts @@ -0,0 +1,29 @@ +import { z } from "zod"; + +export const podcast = z.object({ + id: z.number(), + title: z.string(), + created_at: z.string(), + file_location: z.string(), + podcast_transcript: z.array(z.any()), + search_space_id: z.number(), + chat_state_version: z.number().nullable(), +}); + +export const generatePodcastRequest = z.object({ + type: z.enum(["CHAT", "DOCUMENT"]), + ids: z.array(z.number()), + search_space_id: z.number(), + podcast_title: z.string().optional(), + user_prompt: z.string().optional(), +}); + +export const getPodcastByChatIdRequest = z.object({ + chat_id: z.number(), +}); + +export type GeneratePodcastRequest = z.infer; +export type GetPodcastByChatIdRequest = z.infer< + typeof getPodcastByChatIdRequest +>; +export type Podcast = z.infer;