import { and, eq, isNotNull, or, sql } from "drizzle-orm"; import { boolean, check, integer, jsonb, pgEnum, pgTable, primaryKey, text, timestamp, } from "drizzle-orm/pg-core"; export const bskyProfile = pgTable( "bsky_profile", { did: text().primaryKey(), rev: text().notNull(), // no rkey here, because always self cid: text(), deleted: boolean().notNull(), displayName: text(), description: text(), pronouns: text(), website: text(), avatar: text(), banner: text(), // TODO: the rest, if necessary }, (table) => [ check( "bsky_profile_cid_only_null_if_deleted", or(isNotNull(table.cid), eq(table.deleted, sql`true`))!, ), ], );