import { z } from "zod"; import { EntityTable } from 'Dexie'; import { zodDataUrlSchema } from "src/app/utils/zod"; import { MessageAttachmentFileType, MessageAttachmentSource } from "src/app/module/chat/data/dto/message/messageOutputDTO"; export const AttachmentTableSchema = z.object({ $id: z.number().optional(), // local id $messageId: z.number(), attachmentId: z.string().optional(), file: zodDataUrlSchema, // fileType: z.nativeEnum(MessageAttachmentFileType), source: z.nativeEnum(MessageAttachmentSource), fileName: z.string().optional(), applicationId: z.number().optional(), docId: z.string().optional(), mimeType: z.string().optional(), id: z.string().optional(), description: z.string().optional() }) export type AttachmentTable = z.infer export type DexieAttachmentsTableSchema = EntityTable; export const AttachmentTableColumn = '++$id, id, $messageId, messageId, file'