| import { pgTable, serial, text, timestamp, boolean, integer } from "drizzle-orm/pg-core"; | |
| import { createInsertSchema } from "drizzle-zod"; | |
| import { z } from "zod/v4"; | |
| export const imagesTable = pgTable("images", { | |
| id: serial("id").primaryKey(), | |
| imageUrl: text("image_url").notNull(), | |
| prompt: text("prompt").notNull(), | |
| style: text("style").notNull().default("realistic"), | |
| aspectRatio: text("aspect_ratio").notNull().default("1:1"), | |
| model: text("model").notNull().default("grok"), | |
| isPrivate: boolean("is_private").notNull().default(false), | |
| userId: integer("user_id"), | |
| createdAt: timestamp("created_at").defaultNow().notNull(), | |
| }); | |
| export const insertImageSchema = createInsertSchema(imagesTable).omit({ id: true, createdAt: true }); | |
| export type InsertImage = z.infer<typeof insertImageSchema>; | |
| export type Image = typeof imagesTable.$inferSelect; | |