import { pgTable, varchar, text, boolean, timestamp, uniqueIndex, json, bigint } from "drizzle-orm/pg-core"import { createId } from "fumadb/cuid" export const source = pgTable("source", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), plugin_id: text("plugin_id").notNull(), kind: text("kind").notNull(), name: text("name").notNull(), url: text("url"), can_remove: boolean("can_remove").notNull().default(true), can_refresh: boolean("can_refresh").notNull().default(false), can_edit: boolean("can_edit").notNull().default(false), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("source_scope_id_id_uidx").on(table.scope_id, table.id)]) export const tool = pgTable("tool", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), source_id: text("source_id").notNull(), plugin_id: text("plugin_id").notNull(), name: text("name").notNull(), description: text("description").notNull(), input_schema: json("input_schema"), output_schema: json("output_schema"), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("tool_scope_id_id_uidx").on(table.scope_id, table.id)]) export const definition = pgTable("definition", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), source_id: text("source_id").notNull(), plugin_id: text("plugin_id").notNull(), name: text("name").notNull(), schema: json("schema").notNull(), created_at: timestamp("created_at").notNull()}, (table) => [ uniqueIndex("definition_scope_id_id_uidx").on(table.scope_id, table.id)]) export const secret = pgTable("secret", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), name: text("name").notNull(), provider: text("provider").notNull(), owned_by_connection_id: text("owned_by_connection_id"), created_at: timestamp("created_at").notNull()}, (table) => [ uniqueIndex("secret_scope_id_id_uidx").on(table.scope_id, table.id)]) export const connection = pgTable("connection", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), provider: text("provider").notNull(), identity_label: text("identity_label"), access_token_secret_id: text("access_token_secret_id").notNull(), refresh_token_secret_id: text("refresh_token_secret_id"), expires_at: bigint("expires_at", { mode: "bigint" }), scope: text("scope"), provider_state: json("provider_state"), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("connection_scope_id_id_uidx").on(table.scope_id, table.id)]) export const oauth2_session = pgTable("oauth2_session", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), plugin_id: text("plugin_id").notNull(), strategy: text("strategy").notNull(), connection_id: text("connection_id").notNull(), token_scope: text("token_scope").notNull(), redirect_url: text("redirect_url").notNull(), payload: json("payload").notNull(), expires_at: bigint("expires_at", { mode: "bigint" }).notNull(), created_at: timestamp("created_at").notNull()}, (table) => [ uniqueIndex("oauth2_session_scope_id_id_uidx").on(table.scope_id, table.id)]) export const credential_binding = pgTable("credential_binding", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), plugin_id: text("plugin_id").notNull(), source_id: text("source_id").notNull(), source_scope_id: text("source_scope_id").notNull(), slot_key: text("slot_key").notNull(), kind: text("kind").notNull(), text_value: text("text_value"), secret_id: text("secret_id"), secret_scope_id: text("secret_scope_id"), connection_id: text("connection_id"), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("credential_binding_scope_id_id_uidx").on(table.scope_id, table.id)]) export const plugin_storage = pgTable("plugin_storage", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), plugin_id: text("plugin_id").notNull(), collection: text("collection").notNull(), key: text("key").notNull(), data: json("data").notNull(), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("plugin_storage_scope_id_id_uidx").on(table.scope_id, table.id)]) export const tool_policy = pgTable("tool_policy", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), pattern: text("pattern").notNull(), action: text("action").notNull(), position: text("position").notNull(), created_at: timestamp("created_at").notNull(), updated_at: timestamp("updated_at").notNull()}, (table) => [ uniqueIndex("tool_policy_scope_id_id_uidx").on(table.scope_id, table.id)]) export const blob = pgTable("blob", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), namespace: text("namespace").notNull(), key: text("key").notNull(), value: text("value").notNull()}, (table) => [ uniqueIndex("blob_id_uidx").on(table.id)]) export const workos_vault_metadata = pgTable("workos_vault_metadata", { row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()), id: varchar("id", { length: 255 }).notNull(), scope_id: varchar("scope_id", { length: 255 }).notNull(), name: text("name").notNull(), purpose: text("purpose"), created_at: timestamp("created_at").notNull()}, (table) => [ uniqueIndex("workos_vault_metadata_scope_id_id_uidx").on(table.scope_id, table.id)]) export const private_executor_cloud_settings = pgTable("private_executor_cloud_settings", { id: varchar("id", { length: 255 }).primaryKey().notNull(), version: varchar("version", { length: 255 }).notNull().default("1.0.0")})
import { pgTable, varchar, text, boolean, timestamp, uniqueIndex, json, bigint } from "drizzle-orm/pg-core"
import { createId } from "fumadb/cuid"
export const source = pgTable("source", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
plugin_id: text("plugin_id").notNull(),
kind: text("kind").notNull(),
name: text("name").notNull(),
url: text("url"),
can_remove: boolean("can_remove").notNull().default(true),
can_refresh: boolean("can_refresh").notNull().default(false),
can_edit: boolean("can_edit").notNull().default(false),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("source_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const tool = pgTable("tool", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
source_id: text("source_id").notNull(),
plugin_id: text("plugin_id").notNull(),
name: text("name").notNull(),
description: text("description").notNull(),
input_schema: json("input_schema"),
output_schema: json("output_schema"),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("tool_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const definition = pgTable("definition", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
source_id: text("source_id").notNull(),
plugin_id: text("plugin_id").notNull(),
name: text("name").notNull(),
schema: json("schema").notNull(),
created_at: timestamp("created_at").notNull()
}, (table) => [
uniqueIndex("definition_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const secret = pgTable("secret", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
name: text("name").notNull(),
provider: text("provider").notNull(),
owned_by_connection_id: text("owned_by_connection_id"),
created_at: timestamp("created_at").notNull()
}, (table) => [
uniqueIndex("secret_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const connection = pgTable("connection", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
provider: text("provider").notNull(),
identity_label: text("identity_label"),
access_token_secret_id: text("access_token_secret_id").notNull(),
refresh_token_secret_id: text("refresh_token_secret_id"),
expires_at: bigint("expires_at", { mode: "bigint" }),
scope: text("scope"),
provider_state: json("provider_state"),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("connection_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const oauth2_session = pgTable("oauth2_session", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
plugin_id: text("plugin_id").notNull(),
strategy: text("strategy").notNull(),
connection_id: text("connection_id").notNull(),
token_scope: text("token_scope").notNull(),
redirect_url: text("redirect_url").notNull(),
payload: json("payload").notNull(),
expires_at: bigint("expires_at", { mode: "bigint" }).notNull(),
created_at: timestamp("created_at").notNull()
}, (table) => [
uniqueIndex("oauth2_session_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const credential_binding = pgTable("credential_binding", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
plugin_id: text("plugin_id").notNull(),
source_id: text("source_id").notNull(),
source_scope_id: text("source_scope_id").notNull(),
slot_key: text("slot_key").notNull(),
kind: text("kind").notNull(),
text_value: text("text_value"),
secret_id: text("secret_id"),
secret_scope_id: text("secret_scope_id"),
connection_id: text("connection_id"),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("credential_binding_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const plugin_storage = pgTable("plugin_storage", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
plugin_id: text("plugin_id").notNull(),
collection: text("collection").notNull(),
key: text("key").notNull(),
data: json("data").notNull(),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("plugin_storage_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const tool_policy = pgTable("tool_policy", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
pattern: text("pattern").notNull(),
action: text("action").notNull(),
position: text("position").notNull(),
created_at: timestamp("created_at").notNull(),
updated_at: timestamp("updated_at").notNull()
}, (table) => [
uniqueIndex("tool_policy_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const blob = pgTable("blob", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
namespace: text("namespace").notNull(),
key: text("key").notNull(),
value: text("value").notNull()
}, (table) => [
uniqueIndex("blob_id_uidx").on(table.id)
])
export const workos_vault_metadata = pgTable("workos_vault_metadata", {
row_id: varchar("row_id", { length: 255 }).primaryKey().notNull().$defaultFn(() => createId()),
id: varchar("id", { length: 255 }).notNull(),
scope_id: varchar("scope_id", { length: 255 }).notNull(),
name: text("name").notNull(),
purpose: text("purpose"),
created_at: timestamp("created_at").notNull()
}, (table) => [
uniqueIndex("workos_vault_metadata_scope_id_id_uidx").on(table.scope_id, table.id)
])
export const private_executor_cloud_settings = pgTable("private_executor_cloud_settings", {
id: varchar("id", { length: 255 }).primaryKey().notNull(),
version: varchar("version", { length: 255 }).notNull().default("1.0.0")
})