@headless-lms/adapter-db 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/LICENSE +21 -0
  2. package/dist/_virtual/_rolldown/runtime.js +13 -0
  3. package/dist/client.d.ts +17 -0
  4. package/dist/client.js +11 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/index.d.ts +22 -0
  7. package/dist/index.js +22 -0
  8. package/dist/migrate.d.ts +7 -0
  9. package/dist/migrate.js +27 -0
  10. package/dist/migrate.js.map +1 -0
  11. package/dist/repositories/assets.d.ts +17 -0
  12. package/dist/repositories/assets.js +90 -0
  13. package/dist/repositories/assets.js.map +1 -0
  14. package/dist/repositories/automations.d.ts +30 -0
  15. package/dist/repositories/automations.js +165 -0
  16. package/dist/repositories/automations.js.map +1 -0
  17. package/dist/repositories/content.d.ts +52 -0
  18. package/dist/repositories/content.js +350 -0
  19. package/dist/repositories/content.js.map +1 -0
  20. package/dist/repositories/credentials.d.ts +25 -0
  21. package/dist/repositories/credentials.js +86 -0
  22. package/dist/repositories/credentials.js.map +1 -0
  23. package/dist/repositories/dashboard.d.ts +14 -0
  24. package/dist/repositories/dashboard.js +55 -0
  25. package/dist/repositories/dashboard.js.map +1 -0
  26. package/dist/repositories/discussion.d.ts +31 -0
  27. package/dist/repositories/discussion.js +201 -0
  28. package/dist/repositories/discussion.js.map +1 -0
  29. package/dist/repositories/entitlements.d.ts +23 -0
  30. package/dist/repositories/entitlements.js +129 -0
  31. package/dist/repositories/entitlements.js.map +1 -0
  32. package/dist/repositories/identity.d.ts +17 -0
  33. package/dist/repositories/identity.js +44 -0
  34. package/dist/repositories/identity.js.map +1 -0
  35. package/dist/repositories/integrations.d.ts +18 -0
  36. package/dist/repositories/integrations.js +65 -0
  37. package/dist/repositories/integrations.js.map +1 -0
  38. package/dist/repositories/learn.d.ts +19 -0
  39. package/dist/repositories/learn.js +54 -0
  40. package/dist/repositories/learn.js.map +1 -0
  41. package/dist/repositories/members.d.ts +16 -0
  42. package/dist/repositories/members.js +116 -0
  43. package/dist/repositories/members.js.map +1 -0
  44. package/dist/repositories/org-user-profile.d.ts +92 -0
  45. package/dist/repositories/org-user-profile.js +16 -0
  46. package/dist/repositories/org-user-profile.js.map +1 -0
  47. package/dist/repositories/organizations.d.ts +33 -0
  48. package/dist/repositories/organizations.js +198 -0
  49. package/dist/repositories/organizations.js.map +1 -0
  50. package/dist/repositories/outbox.d.ts +24 -0
  51. package/dist/repositories/outbox.js +56 -0
  52. package/dist/repositories/outbox.js.map +1 -0
  53. package/dist/repositories/pg-errors.d.ts +11 -0
  54. package/dist/repositories/pg-errors.js +15 -0
  55. package/dist/repositories/pg-errors.js.map +1 -0
  56. package/dist/repositories/progress.d.ts +18 -0
  57. package/dist/repositories/progress.js +59 -0
  58. package/dist/repositories/progress.js.map +1 -0
  59. package/dist/repositories/settings.d.ts +22 -0
  60. package/dist/repositories/settings.js +73 -0
  61. package/dist/repositories/settings.js.map +1 -0
  62. package/dist/repositories/students.d.ts +15 -0
  63. package/dist/repositories/students.js +83 -0
  64. package/dist/repositories/students.js.map +1 -0
  65. package/dist/schema/assets.d.ts +181 -0
  66. package/dist/schema/assets.js +24 -0
  67. package/dist/schema/assets.js.map +1 -0
  68. package/dist/schema/automations.d.ts +364 -0
  69. package/dist/schema/automations.js +42 -0
  70. package/dist/schema/automations.js.map +1 -0
  71. package/dist/schema/better-auth.d.ts +2311 -0
  72. package/dist/schema/better-auth.js +156 -0
  73. package/dist/schema/better-auth.js.map +1 -0
  74. package/dist/schema/content.d.ts +966 -0
  75. package/dist/schema/content.js +163 -0
  76. package/dist/schema/content.js.map +1 -0
  77. package/dist/schema/credentials.d.ts +113 -0
  78. package/dist/schema/credentials.js +15 -0
  79. package/dist/schema/credentials.js.map +1 -0
  80. package/dist/schema/discussion.d.ts +399 -0
  81. package/dist/schema/discussion.js +89 -0
  82. package/dist/schema/discussion.js.map +1 -0
  83. package/dist/schema/drift.d.ts +9 -0
  84. package/dist/schema/drift.js +1 -0
  85. package/dist/schema/entitlements.d.ts +147 -0
  86. package/dist/schema/entitlements.js +30 -0
  87. package/dist/schema/entitlements.js.map +1 -0
  88. package/dist/schema/identity.d.ts +130 -0
  89. package/dist/schema/identity.js +16 -0
  90. package/dist/schema/identity.js.map +1 -0
  91. package/dist/schema/index.d.ts +18 -0
  92. package/dist/schema/index.js +43 -0
  93. package/dist/schema/index.js.map +1 -0
  94. package/dist/schema/integrations.d.ts +149 -0
  95. package/dist/schema/integrations.js +25 -0
  96. package/dist/schema/integrations.js.map +1 -0
  97. package/dist/schema/organizations.d.ts +416 -0
  98. package/dist/schema/organizations.js +58 -0
  99. package/dist/schema/organizations.js.map +1 -0
  100. package/dist/schema/outbox.d.ts +166 -0
  101. package/dist/schema/outbox.js +19 -0
  102. package/dist/schema/outbox.js.map +1 -0
  103. package/dist/schema/progress.d.ts +166 -0
  104. package/dist/schema/progress.js +30 -0
  105. package/dist/schema/progress.js.map +1 -0
  106. package/dist/schema/settings.d.ts +115 -0
  107. package/dist/schema/settings.js +19 -0
  108. package/dist/schema/settings.js.map +1 -0
  109. package/dist/unit-of-work.d.ts +13 -0
  110. package/dist/unit-of-work.js +16 -0
  111. package/dist/unit-of-work.js.map +1 -0
  112. package/drizzle/0000_baseline.sql +526 -0
  113. package/drizzle/meta/0000_snapshot.json +3925 -0
  114. package/drizzle/meta/_journal.json +13 -0
  115. package/package.json +56 -0
@@ -0,0 +1,156 @@
1
+ import { boolean, index, pgTable, text, timestamp } from "drizzle-orm/pg-core";
2
+ //#region src/schema/better-auth.ts
3
+ const user = pgTable("ba_user", {
4
+ id: text("id").primaryKey(),
5
+ name: text("name").notNull(),
6
+ email: text("email").notNull().unique(),
7
+ emailVerified: boolean("email_verified").$defaultFn(() => false).notNull(),
8
+ image: text("image"),
9
+ createdAt: timestamp("created_at", { withTimezone: true }).$defaultFn(() => /* @__PURE__ */ new Date()).notNull(),
10
+ updatedAt: timestamp("updated_at", { withTimezone: true }).$defaultFn(() => /* @__PURE__ */ new Date()).notNull()
11
+ });
12
+ const session = pgTable("ba_session", {
13
+ id: text("id").primaryKey(),
14
+ expiresAt: timestamp("expires_at", { withTimezone: true }).notNull(),
15
+ token: text("token").notNull().unique(),
16
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
17
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull(),
18
+ ipAddress: text("ip_address"),
19
+ userAgent: text("user_agent"),
20
+ userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
21
+ activeOrganizationId: text("active_organization_id")
22
+ });
23
+ const account = pgTable("ba_account", {
24
+ id: text("id").primaryKey(),
25
+ accountId: text("account_id").notNull(),
26
+ providerId: text("provider_id").notNull(),
27
+ userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
28
+ accessToken: text("access_token"),
29
+ refreshToken: text("refresh_token"),
30
+ idToken: text("id_token"),
31
+ accessTokenExpiresAt: timestamp("access_token_expires_at", { withTimezone: true }),
32
+ refreshTokenExpiresAt: timestamp("refresh_token_expires_at", { withTimezone: true }),
33
+ scope: text("scope"),
34
+ password: text("password"),
35
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
36
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull()
37
+ });
38
+ const verification = pgTable("ba_verification", {
39
+ id: text("id").primaryKey(),
40
+ identifier: text("identifier").notNull(),
41
+ value: text("value").notNull(),
42
+ expiresAt: timestamp("expires_at", { withTimezone: true }).notNull(),
43
+ createdAt: timestamp("created_at", { withTimezone: true }).$defaultFn(() => /* @__PURE__ */ new Date()),
44
+ updatedAt: timestamp("updated_at", { withTimezone: true }).$defaultFn(() => /* @__PURE__ */ new Date())
45
+ });
46
+ const organization = pgTable("ba_organization", {
47
+ id: text("id").primaryKey(),
48
+ name: text("name").notNull(),
49
+ slug: text("slug").notNull().unique(),
50
+ logo: text("logo"),
51
+ metadata: text("metadata"),
52
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
53
+ updatedAt: timestamp("updated_at", { withTimezone: true })
54
+ });
55
+ const member = pgTable("ba_member", {
56
+ id: text("id").primaryKey(),
57
+ organizationId: text("organization_id").notNull().references(() => organization.id, { onDelete: "cascade" }),
58
+ userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
59
+ role: text("role").notNull().default("member"),
60
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull()
61
+ });
62
+ const invitation = pgTable("ba_invitation", {
63
+ id: text("id").primaryKey(),
64
+ organizationId: text("organization_id").notNull().references(() => organization.id, { onDelete: "cascade" }),
65
+ email: text("email").notNull(),
66
+ role: text("role").notNull(),
67
+ status: text("status").notNull().default("pending"),
68
+ expiresAt: timestamp("expires_at", { withTimezone: true }),
69
+ inviterId: text("inviter_id").notNull().references(() => user.id, { onDelete: "cascade" }),
70
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull()
71
+ });
72
+ const oauthClient = pgTable("ba_oauth_client", {
73
+ id: text("id").primaryKey(),
74
+ clientId: text("client_id").notNull().unique(),
75
+ clientSecret: text("client_secret"),
76
+ disabled: boolean("disabled").default(false),
77
+ skipConsent: boolean("skip_consent"),
78
+ enableEndSession: boolean("enable_end_session"),
79
+ subjectType: text("subject_type"),
80
+ scopes: text("scopes").array(),
81
+ userId: text("user_id").references(() => user.id, { onDelete: "cascade" }),
82
+ name: text("name"),
83
+ uri: text("uri"),
84
+ icon: text("icon"),
85
+ contacts: text("contacts").array(),
86
+ tos: text("tos"),
87
+ policy: text("policy"),
88
+ softwareId: text("software_id"),
89
+ softwareVersion: text("software_version"),
90
+ softwareStatement: text("software_statement"),
91
+ redirectUris: text("redirect_uris").array().notNull(),
92
+ postLogoutRedirectUris: text("post_logout_redirect_uris").array(),
93
+ tokenEndpointAuthMethod: text("token_endpoint_auth_method"),
94
+ grantTypes: text("grant_types").array(),
95
+ responseTypes: text("response_types").array(),
96
+ public: boolean("public"),
97
+ type: text("type"),
98
+ requirePkce: boolean("require_pkce"),
99
+ referenceId: text("reference_id"),
100
+ metadata: text("metadata"),
101
+ createdAt: timestamp("created_at", { withTimezone: true }),
102
+ updatedAt: timestamp("updated_at", { withTimezone: true })
103
+ }, (t) => [index("ba_oauth_client_user_id_idx").on(t.userId)]);
104
+ const oauthRefreshToken = pgTable("ba_oauth_refresh_token", {
105
+ id: text("id").primaryKey(),
106
+ token: text("token").notNull().unique(),
107
+ clientId: text("client_id").notNull().references(() => oauthClient.clientId),
108
+ sessionId: text("session_id").references(() => session.id, { onDelete: "set null" }),
109
+ userId: text("user_id").notNull().references(() => user.id, { onDelete: "cascade" }),
110
+ referenceId: text("reference_id"),
111
+ expiresAt: timestamp("expires_at", { withTimezone: true }).notNull(),
112
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
113
+ revoked: timestamp("revoked", { withTimezone: true }),
114
+ authTime: timestamp("auth_time", { withTimezone: true }),
115
+ scopes: text("scopes").array().notNull()
116
+ }, (t) => [
117
+ index("ba_oauth_refresh_token_client_id_idx").on(t.clientId),
118
+ index("ba_oauth_refresh_token_session_id_idx").on(t.sessionId),
119
+ index("ba_oauth_refresh_token_user_id_idx").on(t.userId)
120
+ ]);
121
+ const oauthAccessToken = pgTable("ba_oauth_access_token", {
122
+ id: text("id").primaryKey(),
123
+ token: text("token").notNull().unique(),
124
+ clientId: text("client_id").notNull().references(() => oauthClient.clientId),
125
+ sessionId: text("session_id").references(() => session.id, { onDelete: "set null" }),
126
+ userId: text("user_id").references(() => user.id, { onDelete: "cascade" }),
127
+ referenceId: text("reference_id"),
128
+ refreshId: text("refresh_id").references(() => oauthRefreshToken.id),
129
+ expiresAt: timestamp("expires_at", { withTimezone: true }).notNull(),
130
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
131
+ scopes: text("scopes").array().notNull()
132
+ }, (t) => [
133
+ index("ba_oauth_access_token_client_id_idx").on(t.clientId),
134
+ index("ba_oauth_access_token_session_id_idx").on(t.sessionId),
135
+ index("ba_oauth_access_token_user_id_idx").on(t.userId),
136
+ index("ba_oauth_access_token_refresh_id_idx").on(t.refreshId)
137
+ ]);
138
+ const oauthConsent = pgTable("ba_oauth_consent", {
139
+ id: text("id").primaryKey(),
140
+ clientId: text("client_id").notNull().references(() => oauthClient.clientId),
141
+ userId: text("user_id").references(() => user.id, { onDelete: "cascade" }),
142
+ referenceId: text("reference_id"),
143
+ scopes: text("scopes").array().notNull(),
144
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull(),
145
+ updatedAt: timestamp("updated_at", { withTimezone: true }).notNull()
146
+ }, (t) => [index("ba_oauth_consent_client_id_idx").on(t.clientId), index("ba_oauth_consent_user_id_idx").on(t.userId)]);
147
+ const jwks = pgTable("ba_jwks", {
148
+ id: text("id").primaryKey(),
149
+ publicKey: text("public_key").notNull(),
150
+ privateKey: text("private_key").notNull(),
151
+ createdAt: timestamp("created_at", { withTimezone: true }).notNull()
152
+ });
153
+ //#endregion
154
+ export { account, invitation, jwks, member, oauthAccessToken, oauthClient, oauthConsent, oauthRefreshToken, organization, session, user, verification };
155
+
156
+ //# sourceMappingURL=better-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"better-auth.js","names":[],"sources":["../../src/schema/better-auth.ts"],"sourcesContent":["// Better Auth's own tables. Every physical table is prefixed `ba_` so the auth\n// engine's storage is visibly separate from the domain's own tables (`users`,\n// `organizations`, …) it is mirrored into. The exported identifiers stay the\n// better-auth model names — that is the key `drizzleAdapter` looks each model\n// up by, so it must not carry the prefix.\nimport { pgTable, text, timestamp, boolean, index } from 'drizzle-orm/pg-core';\n\nexport const user = pgTable('ba_user', {\n id: text('id').primaryKey(),\n name: text('name').notNull(),\n email: text('email').notNull().unique(),\n emailVerified: boolean('email_verified')\n .$defaultFn(() => false)\n .notNull(),\n image: text('image'),\n createdAt: timestamp('created_at', { withTimezone: true })\n .$defaultFn(() => new Date())\n .notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true })\n .$defaultFn(() => new Date())\n .notNull(),\n});\n\nexport const session = pgTable('ba_session', {\n id: text('id').primaryKey(),\n expiresAt: timestamp('expires_at', { withTimezone: true }).notNull(),\n token: text('token').notNull().unique(),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }).notNull(),\n ipAddress: text('ip_address'),\n userAgent: text('user_agent'),\n userId: text('user_id')\n .notNull()\n .references(() => user.id, { onDelete: 'cascade' }),\n // organization plugin: the org the session is currently acting in.\n activeOrganizationId: text('active_organization_id'),\n});\n\nexport const account = pgTable('ba_account', {\n id: text('id').primaryKey(),\n accountId: text('account_id').notNull(),\n providerId: text('provider_id').notNull(),\n userId: text('user_id')\n .notNull()\n .references(() => user.id, { onDelete: 'cascade' }),\n accessToken: text('access_token'),\n refreshToken: text('refresh_token'),\n idToken: text('id_token'),\n accessTokenExpiresAt: timestamp('access_token_expires_at', { withTimezone: true }),\n refreshTokenExpiresAt: timestamp('refresh_token_expires_at', { withTimezone: true }),\n scope: text('scope'),\n password: text('password'),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }).notNull(),\n});\n\nexport const verification = pgTable('ba_verification', {\n id: text('id').primaryKey(),\n identifier: text('identifier').notNull(),\n value: text('value').notNull(),\n expiresAt: timestamp('expires_at', { withTimezone: true }).notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).$defaultFn(() => new Date()),\n updatedAt: timestamp('updated_at', { withTimezone: true }).$defaultFn(() => new Date()),\n});\n\n// --- organization plugin tables ---\n\nexport const organization = pgTable('ba_organization', {\n id: text('id').primaryKey(),\n name: text('name').notNull(),\n slug: text('slug').notNull().unique(),\n logo: text('logo'),\n metadata: text('metadata'),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }),\n});\n\nexport const member = pgTable('ba_member', {\n id: text('id').primaryKey(),\n organizationId: text('organization_id')\n .notNull()\n .references(() => organization.id, { onDelete: 'cascade' }),\n userId: text('user_id')\n .notNull()\n .references(() => user.id, { onDelete: 'cascade' }),\n role: text('role').notNull().default('member'),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n});\n\nexport const invitation = pgTable('ba_invitation', {\n id: text('id').primaryKey(),\n organizationId: text('organization_id')\n .notNull()\n .references(() => organization.id, { onDelete: 'cascade' }),\n email: text('email').notNull(),\n role: text('role').notNull(),\n status: text('status').notNull().default('pending'),\n expiresAt: timestamp('expires_at', { withTimezone: true }),\n inviterId: text('inviter_id')\n .notNull()\n .references(() => user.id, { onDelete: 'cascade' }),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n});\n\n// --- OAuth 2.1 provider tables (MCP). Owned by @better-auth/oauth-provider. ---\n// `reference_id` is the plugin's tenant slot: the organization the person chose\n// at consent. It is the only thing that tells a token which org it acts in.\nexport const oauthClient = pgTable(\n 'ba_oauth_client',\n {\n id: text('id').primaryKey(),\n clientId: text('client_id').notNull().unique(),\n clientSecret: text('client_secret'),\n disabled: boolean('disabled').default(false),\n skipConsent: boolean('skip_consent'),\n enableEndSession: boolean('enable_end_session'),\n subjectType: text('subject_type'),\n scopes: text('scopes').array(),\n userId: text('user_id').references(() => user.id, { onDelete: 'cascade' }),\n name: text('name'),\n uri: text('uri'),\n icon: text('icon'),\n contacts: text('contacts').array(),\n tos: text('tos'),\n policy: text('policy'),\n softwareId: text('software_id'),\n softwareVersion: text('software_version'),\n softwareStatement: text('software_statement'),\n redirectUris: text('redirect_uris').array().notNull(),\n postLogoutRedirectUris: text('post_logout_redirect_uris').array(),\n tokenEndpointAuthMethod: text('token_endpoint_auth_method'),\n grantTypes: text('grant_types').array(),\n responseTypes: text('response_types').array(),\n public: boolean('public'),\n type: text('type'),\n requirePkce: boolean('require_pkce'),\n referenceId: text('reference_id'),\n metadata: text('metadata'),\n createdAt: timestamp('created_at', { withTimezone: true }),\n updatedAt: timestamp('updated_at', { withTimezone: true }),\n },\n (t) => [index('ba_oauth_client_user_id_idx').on(t.userId)],\n);\n\nexport const oauthRefreshToken = pgTable(\n 'ba_oauth_refresh_token',\n {\n id: text('id').primaryKey(),\n token: text('token').notNull().unique(),\n clientId: text('client_id')\n .notNull()\n .references(() => oauthClient.clientId),\n sessionId: text('session_id').references(() => session.id, { onDelete: 'set null' }),\n userId: text('user_id')\n .notNull()\n .references(() => user.id, { onDelete: 'cascade' }),\n referenceId: text('reference_id'),\n expiresAt: timestamp('expires_at', { withTimezone: true }).notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n revoked: timestamp('revoked', { withTimezone: true }),\n authTime: timestamp('auth_time', { withTimezone: true }),\n scopes: text('scopes').array().notNull(),\n },\n (t) => [\n index('ba_oauth_refresh_token_client_id_idx').on(t.clientId),\n index('ba_oauth_refresh_token_session_id_idx').on(t.sessionId),\n index('ba_oauth_refresh_token_user_id_idx').on(t.userId),\n ],\n);\n\nexport const oauthAccessToken = pgTable(\n 'ba_oauth_access_token',\n {\n id: text('id').primaryKey(),\n token: text('token').notNull().unique(),\n clientId: text('client_id')\n .notNull()\n .references(() => oauthClient.clientId),\n sessionId: text('session_id').references(() => session.id, { onDelete: 'set null' }),\n userId: text('user_id').references(() => user.id, { onDelete: 'cascade' }),\n referenceId: text('reference_id'),\n refreshId: text('refresh_id').references(() => oauthRefreshToken.id),\n expiresAt: timestamp('expires_at', { withTimezone: true }).notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n scopes: text('scopes').array().notNull(),\n },\n (t) => [\n index('ba_oauth_access_token_client_id_idx').on(t.clientId),\n index('ba_oauth_access_token_session_id_idx').on(t.sessionId),\n index('ba_oauth_access_token_user_id_idx').on(t.userId),\n index('ba_oauth_access_token_refresh_id_idx').on(t.refreshId),\n ],\n);\n\nexport const oauthConsent = pgTable(\n 'ba_oauth_consent',\n {\n id: text('id').primaryKey(),\n clientId: text('client_id')\n .notNull()\n .references(() => oauthClient.clientId),\n userId: text('user_id').references(() => user.id, { onDelete: 'cascade' }),\n referenceId: text('reference_id'),\n scopes: text('scopes').array().notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }).notNull(),\n },\n (t) => [\n index('ba_oauth_consent_client_id_idx').on(t.clientId),\n index('ba_oauth_consent_user_id_idx').on(t.userId),\n ],\n);\n\n// better-auth's jwt plugin: the signing keys behind JWT access tokens.\nexport const jwks = pgTable('ba_jwks', {\n id: text('id').primaryKey(),\n publicKey: text('public_key').notNull(),\n privateKey: text('private_key').notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).notNull(),\n});\n"],"mappings":"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"}