import { sql } from "drizzle-orm"; import { index, integer, pgTable, primaryKey, timestamp, varchar } from "drizzle-orm/pg-core"; import { users } from "./auth"; export const appConfigs = pgTable("app_configs", { key: varchar().primaryKey(), value: varchar().notNull(), valueType: varchar("value_type").notNull(), updatedAt: timestamp("updated_at") .defaultNow() .$onUpdate(() => sql`CURRENT_TIMESTAMP`) .notNull(), }); export const userConfigs = pgTable("user_configs", { userId: integer("user_id") .notNull() .references(() => users.id, { onDelete: "cascade" }), key: varchar().notNull(), value: varchar().notNull(), valueType: varchar("value_type").notNull(), updatedAt: timestamp("updated_at") .defaultNow() .$onUpdate(() => sql`CURRENT_TIMESTAMP`) .notNull(), }, (table) => [ primaryKey({ name: "user_configs_user_id_key_pk", columns: [table.userId, table.key], }), index("user_configs_user_id_idx").on(table.userId), ]);