import { sql } from "drizzle-orm" import { integer, sqliteTable, text, uniqueIndex } from "drizzle-orm/sqlite-core" import { Timestamps } from "../database/schema.sql" import type { ConnectorSchema } from "../connector/schema" import type { Credential } from "../credential" export const CredentialTable = sqliteTable( "credential", { id: text().$type().primaryKey(), connector_id: text().$type().notNull(), method_id: text().$type().notNull(), label: text().notNull(), value: text({ mode: "json" }).$type().notNull(), active: integer({ mode: "boolean" }).notNull().default(false), ...Timestamps, }, (table) => [ uniqueIndex("credential_connector_active_idx") .on(table.connector_id) .where(sql`${table.active} = 1`), ], )