import { z } from "zod"; const DbSchema = { ev: { eventDates: { eventId: z.string().uuid(), date: z.string().datetime(), }, eventLocations: { eventId: z.string().uuid(), locationId: z.string().uuid(), }, eventManagers: { eventId: z.string().uuid(), userId: z.string().uuid(), }, events: { eventId: z.string().uuid(), localName: z.string(), timezone: z.string(), companyId: z.string().uuid(), }, locations: { locationId: z.string().uuid(), name: z.string(), eventId: z.string().uuid(), }, perms: { permId: z.string(), name: z.string(), defaultValue: z.boolean(), }, programPoints: { programPointId: z.string().uuid(), name: z.string().min(1), startDate: z.string().datetime(), endDate: z.string().datetime(), eventId: z.string().uuid(), roomId: z.string().uuid().nullable(), group: z.string(), isInternal: z.boolean(), }, roleTokens: { token: z.string().uuid(), roleId: z.string().uuid(), capacity: z.number(), }, roleTokenConnections: { connectionId: z.string().uuid(), token: z.string().uuid(), username: z.string(), }, roles: { roleId: z.string().uuid(), eventId: z.string().uuid(), name: z.string(), }, rolesOverrides: { roleId: z.string().uuid(), permId: z.string(), newValue: z.boolean(), }, rooms: { roomId: z.string().uuid(), name: z.string(), locationId: z.string().uuid(), parentId: z.string().uuid().nullable(), }, taskBlocks: { taskBlockId: z.string().uuid(), name: z.string(), eventId: z.string().uuid(), }, taskExecutors: { taskId: z.string().uuid(), roleId: z.string().uuid(), }, tasks: { taskId: z.string().uuid(), name: z.string(), startDate: z.string().datetime().nullable(), endDate: z.string().datetime().nullable(), accountableId: z.string().uuid().nullable(), isTodo: z.boolean(), programPointId: z.string().uuid().nullable(), roomId: z.string().uuid().nullable(), taskBlockId: z.string().uuid(), checklist: z.array( z.object({ checklistItemId: z.string().uuid(), name: z.string(), isDone: z.boolean(), }), ), }, }, usr: { companies: { companyId: z.string().uuid(), name: z.string(), ownerId: z.string().uuid(), timezone: z.string(), }, confirmPins: { transactionId: z.string().uuid(), email: z.string().email(), confirmPin: z.number().min(1000).max(9999), createTime: z.string().datetime(), wrongPinTries: z.number(), }, userRefreshTokens: { refreshToken: z.string(), userId: z.string().uuid(), }, users: { userId: z.string().uuid(), email: z.string().email(), name: z.string(), password: z.string(), wrongPassTries: z.number(), }, }, }; export { DbSchema };