@yielded/auth-persistence-drizzle 0.1.0-beta.23 → 0.1.0-beta.25

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 (189) hide show
  1. package/README.md +3 -0
  2. package/dist/D1.d.mts +9 -9
  3. package/dist/D1.mjs +2 -1
  4. package/dist/D1.mjs.map +1 -1
  5. package/dist/Libsql.d.mts +48 -64
  6. package/dist/Libsql.mjs +2 -1
  7. package/dist/Libsql.mjs.map +1 -1
  8. package/dist/Mysql2.d.mts +26 -27
  9. package/dist/Pglite.d.mts +28 -28
  10. package/dist/Pglite.mjs +2 -1
  11. package/dist/Pglite.mjs.map +1 -1
  12. package/dist/Postgres.d.mts +29 -29
  13. package/dist/Postgres.mjs +2 -1
  14. package/dist/Postgres.mjs.map +1 -1
  15. package/dist/SqliteBun.d.mts +49 -65
  16. package/dist/SqliteBun.mjs +2 -1
  17. package/dist/SqliteBun.mjs.map +1 -1
  18. package/dist/SqliteDo.d.mts +47 -63
  19. package/dist/SqliteDo.mjs +2 -1
  20. package/dist/SqliteDo.mjs.map +1 -1
  21. package/dist/SqliteNode.d.mts +51 -67
  22. package/dist/SqliteNode.mjs +2 -1
  23. package/dist/SqliteNode.mjs.map +1 -1
  24. package/dist/SqliteWasm.d.mts +47 -63
  25. package/dist/SqliteWasm.mjs +2 -1
  26. package/dist/SqliteWasm.mjs.map +1 -1
  27. package/dist/drizzle/crypto.mjs +1 -1
  28. package/dist/drizzle/d1-emails.d.mts +1 -1
  29. package/dist/drizzle/d1-oauth.d.mts +15 -15
  30. package/dist/drizzle/d1-passkey.d.mts +1 -1
  31. package/dist/drizzle/d1-password-prepared.d.mts +4 -4
  32. package/dist/drizzle/d1-password-prepared.mjs +1 -1
  33. package/dist/drizzle/d1-password-prepared.mjs.map +1 -1
  34. package/dist/drizzle/d1-passwords.d.mts +17 -33
  35. package/dist/drizzle/d1-passwords.mjs +57 -199
  36. package/dist/drizzle/d1-passwords.mjs.map +1 -1
  37. package/dist/drizzle/d1-phone.d.mts +1 -1
  38. package/dist/drizzle/d1-proofs.d.mts +1 -1
  39. package/dist/drizzle/d1-sessions.d.mts +2 -2
  40. package/dist/drizzle/d1-sessions.mjs +11 -6
  41. package/dist/drizzle/d1-sessions.mjs.map +1 -1
  42. package/dist/drizzle/d1-totp.d.mts +1 -1
  43. package/dist/drizzle/mysql-password-prepared.d.mts +5 -5
  44. package/dist/drizzle/mysql-password-prepared.mjs.map +1 -1
  45. package/dist/drizzle/mysql-passwords.d.mts +16 -32
  46. package/dist/drizzle/mysql-passwords.mjs.map +1 -1
  47. package/dist/drizzle/mysql-sessions.d.mts +1 -1
  48. package/dist/drizzle/native-sql-table.mjs +26 -1
  49. package/dist/drizzle/native-sql-table.mjs.map +1 -1
  50. package/dist/drizzle/oauth-connected-model.d.mts +20 -281
  51. package/dist/drizzle/oauth-connected-model.mjs +3 -17
  52. package/dist/drizzle/oauth-connected-model.mjs.map +1 -1
  53. package/dist/drizzle/oauth-connected-reference.d.mts +1 -3
  54. package/dist/drizzle/oauth-connected-reference.mjs +4 -53
  55. package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
  56. package/dist/drizzle/oauth-connected-target.d.mts +3 -990
  57. package/dist/drizzle/oauth-connected-target.mjs +8 -92
  58. package/dist/drizzle/oauth-connected-target.mjs.map +1 -1
  59. package/dist/drizzle/oauth-kernel.mjs +11 -0
  60. package/dist/drizzle/oauth-kernel.mjs.map +1 -0
  61. package/dist/drizzle/oauth-model.d.mts +35 -438
  62. package/dist/drizzle/oauth-model.mjs +6 -44
  63. package/dist/drizzle/oauth-model.mjs.map +1 -1
  64. package/dist/drizzle/oauth-mysql.mjs +2 -2
  65. package/dist/drizzle/oauth-mysql.mjs.map +1 -1
  66. package/dist/drizzle/oauth-proxy.d.mts +10 -0
  67. package/dist/drizzle/oauth-proxy.mjs +54 -0
  68. package/dist/drizzle/oauth-proxy.mjs.map +1 -0
  69. package/dist/drizzle/oauth-target.d.mts +6 -107
  70. package/dist/drizzle/oauth-target.mjs +15 -245
  71. package/dist/drizzle/oauth-target.mjs.map +1 -1
  72. package/dist/drizzle/password-model.d.mts +5 -6
  73. package/dist/drizzle/password-prepared-model.d.mts +5 -5
  74. package/dist/drizzle/password-prepared-model.mjs.map +1 -1
  75. package/dist/drizzle/password-prepared-sql.mjs +1 -1
  76. package/dist/drizzle/password-prepared-sql.mjs.map +1 -1
  77. package/dist/drizzle/password-prepared-state.mjs +1 -1
  78. package/dist/drizzle/pg-password-prepared.d.mts +5 -5
  79. package/dist/drizzle/pg-password-prepared.mjs.map +1 -1
  80. package/dist/drizzle/pg-passwords.d.mts +16 -32
  81. package/dist/drizzle/pg-passwords.mjs.map +1 -1
  82. package/dist/drizzle/pg-sessions.d.mts +1 -1
  83. package/dist/drizzle/phone-target.d.mts +1 -1
  84. package/dist/drizzle/phone-target.mjs +1 -1
  85. package/dist/drizzle/query-operations.mjs +3 -1
  86. package/dist/drizzle/query-operations.mjs.map +1 -1
  87. package/dist/drizzle/sqlite-password-prepared.mjs.map +1 -1
  88. package/dist/drizzle/sqlite-passwords.mjs.map +1 -1
  89. package/dist/drizzle/storage-validation.mjs +10 -185
  90. package/dist/drizzle/storage-validation.mjs.map +1 -1
  91. package/dist/drizzle/totp-target.d.mts +2 -2
  92. package/dist/drizzle/totp-target.mjs +2 -2
  93. package/dist/drizzle/transaction-execution.d.mts +2 -2
  94. package/dist/drizzle/transaction-owner.d.mts +1 -2
  95. package/dist/index.d.mts +3 -2
  96. package/dist/internal/drizzle-postgres-oauth-proxy.d.mts +138 -0
  97. package/dist/internal/drizzle-postgres-oauth-proxy.mjs +29 -0
  98. package/dist/internal/drizzle-postgres-oauth-proxy.mjs.map +1 -0
  99. package/dist/internal/drizzle-sqlite-oauth-proxy.d.mts +146 -0
  100. package/dist/internal/drizzle-sqlite-oauth-proxy.mjs +29 -0
  101. package/dist/internal/drizzle-sqlite-oauth-proxy.mjs.map +1 -0
  102. package/package.json +1 -1
  103. package/src/D1.ts +2 -0
  104. package/src/Libsql.ts +2 -0
  105. package/src/Pglite.ts +2 -0
  106. package/src/Postgres.ts +2 -0
  107. package/src/SqliteBun.ts +2 -0
  108. package/src/SqliteDo.ts +2 -0
  109. package/src/SqliteNode.ts +2 -0
  110. package/src/SqliteWasm.ts +2 -0
  111. package/src/drizzle/d1-password-prepared.ts +4 -6
  112. package/src/drizzle/d1-passwords.ts +125 -459
  113. package/src/drizzle/d1-sessions.ts +21 -6
  114. package/src/drizzle/mysql-password-prepared.ts +4 -8
  115. package/src/drizzle/mysql-passwords.ts +5 -10
  116. package/src/drizzle/native-sql-table.ts +30 -0
  117. package/src/drizzle/oauth-connected-model.ts +97 -315
  118. package/src/drizzle/oauth-connected-reference.ts +13 -93
  119. package/src/drizzle/oauth-connected-target.ts +14 -271
  120. package/src/drizzle/oauth-kernel.ts +10 -0
  121. package/src/drizzle/oauth-model.ts +188 -541
  122. package/src/drizzle/oauth-mysql.ts +2 -2
  123. package/src/drizzle/oauth-proxy.ts +101 -0
  124. package/src/drizzle/oauth-target.ts +33 -737
  125. package/src/drizzle/password-model.ts +0 -13
  126. package/src/drizzle/password-prepared-model.ts +0 -6
  127. package/src/drizzle/password-prepared-sql.ts +2 -1
  128. package/src/drizzle/pg-password-prepared.ts +4 -8
  129. package/src/drizzle/pg-passwords.ts +5 -10
  130. package/src/drizzle/query-operations.ts +4 -0
  131. package/src/drizzle/sqlite-password-prepared.ts +4 -8
  132. package/src/drizzle/sqlite-passwords.ts +7 -14
  133. package/src/drizzle/storage-validation.ts +13 -214
  134. package/src/index.ts +2 -4
  135. package/src/internal/drizzle-postgres-oauth-proxy.ts +37 -0
  136. package/src/internal/drizzle-sqlite-oauth-proxy.ts +44 -0
  137. package/dist/_virtual/_rolldown/runtime.mjs +0 -13
  138. package/dist/drizzle/oauth-accounts.mjs +0 -359
  139. package/dist/drizzle/oauth-accounts.mjs.map +0 -1
  140. package/dist/drizzle/oauth-connected-access.mjs +0 -212
  141. package/dist/drizzle/oauth-connected-access.mjs.map +0 -1
  142. package/dist/drizzle/oauth-connected-collection.mjs +0 -202
  143. package/dist/drizzle/oauth-connected-collection.mjs.map +0 -1
  144. package/dist/drizzle/oauth-connected-custody.mjs +0 -147
  145. package/dist/drizzle/oauth-connected-custody.mjs.map +0 -1
  146. package/dist/drizzle/oauth-connected-flow.mjs +0 -297
  147. package/dist/drizzle/oauth-connected-flow.mjs.map +0 -1
  148. package/dist/drizzle/oauth-connected-input.mjs +0 -122
  149. package/dist/drizzle/oauth-connected-input.mjs.map +0 -1
  150. package/dist/drizzle/oauth-connected-maintenance.mjs +0 -214
  151. package/dist/drizzle/oauth-connected-maintenance.mjs.map +0 -1
  152. package/dist/drizzle/oauth-connected-management.mjs +0 -229
  153. package/dist/drizzle/oauth-connected-management.mjs.map +0 -1
  154. package/dist/drizzle/oauth-connected-settlement.mjs +0 -128
  155. package/dist/drizzle/oauth-connected-settlement.mjs.map +0 -1
  156. package/dist/drizzle/oauth-connected-sign-in.mjs +0 -265
  157. package/dist/drizzle/oauth-connected-sign-in.mjs.map +0 -1
  158. package/dist/drizzle/oauth-connected-state.d.mts +0 -2062
  159. package/dist/drizzle/oauth-connected-state.mjs +0 -430
  160. package/dist/drizzle/oauth-connected-state.mjs.map +0 -1
  161. package/dist/drizzle/oauth-flow.d.mts +0 -22
  162. package/dist/drizzle/oauth-flow.mjs +0 -253
  163. package/dist/drizzle/oauth-flow.mjs.map +0 -1
  164. package/dist/drizzle/oauth-input.mjs +0 -127
  165. package/dist/drizzle/oauth-input.mjs.map +0 -1
  166. package/dist/drizzle/oauth-owner.d.mts +0 -10
  167. package/dist/drizzle/oauth-owner.mjs +0 -10
  168. package/dist/drizzle/oauth-owner.mjs.map +0 -1
  169. package/dist/drizzle/oauth-registration.d.mts +0 -5
  170. package/dist/drizzle/oauth-registration.mjs +0 -374
  171. package/dist/drizzle/oauth-registration.mjs.map +0 -1
  172. package/dist/drizzle/oauth-state.mjs +0 -107
  173. package/dist/drizzle/oauth-state.mjs.map +0 -1
  174. package/src/drizzle/oauth-accounts.ts +0 -805
  175. package/src/drizzle/oauth-connected-access.ts +0 -361
  176. package/src/drizzle/oauth-connected-collection.ts +0 -324
  177. package/src/drizzle/oauth-connected-custody.ts +0 -279
  178. package/src/drizzle/oauth-connected-flow.ts +0 -529
  179. package/src/drizzle/oauth-connected-input.ts +0 -147
  180. package/src/drizzle/oauth-connected-maintenance.ts +0 -346
  181. package/src/drizzle/oauth-connected-management.ts +0 -365
  182. package/src/drizzle/oauth-connected-settlement.ts +0 -251
  183. package/src/drizzle/oauth-connected-sign-in.ts +0 -443
  184. package/src/drizzle/oauth-connected-state.ts +0 -872
  185. package/src/drizzle/oauth-flow.ts +0 -462
  186. package/src/drizzle/oauth-input.ts +0 -201
  187. package/src/drizzle/oauth-owner.ts +0 -29
  188. package/src/drizzle/oauth-registration.ts +0 -640
  189. package/src/drizzle/oauth-state.ts +0 -218
@@ -7,16 +7,16 @@ import { PasswordPreparedPersistenceMapping, PasswordPreparedProofMapping } from
7
7
  import { AuthenticationAuthorityMapping, PendingAuthenticationMapping, SignedSessionValidityMapping, StatefulSessionMapping } from "./drizzle/session-model.mjs";
8
8
  import { PasskeyCredentialMapping, PasskeyEnrollmentContextMapping, PasskeyPersistenceMapping } from "./drizzle/passkey-model.mjs";
9
9
  import { SessionStepUpMapping } from "./drizzle/step-up-model.mjs";
10
- import { OAuthAccountsMapping, OAuthRegistrationAuthority, OAuthRegistrationIntentMapping, OAuthRegistrationMapping, OAuthSignInMapping } from "./drizzle/oauth-model.mjs";
10
+ import { OAuthAccountsMapping, OAuthRegistrationIntentMapping, OAuthRegistrationMapping, OAuthSignInMapping } from "./drizzle/oauth-model.mjs";
11
11
  import { OAuthConnectedMapping, OAuthConnectedRevocationMapping } from "./drizzle/oauth-connected-model.mjs";
12
12
  import { PasskeyRegistrationCeremonyMapping } from "./drizzle/passkey-registration-ceremony-model.mjs";
13
13
  import { EmailRegistrationAuthority } from "./drizzle/email-registration.mjs";
14
- import { OAuthCoordinatorError } from "./drizzle/oauth-target.mjs";
15
14
  import { passwordPreparedPersistenceLayer } from "./drizzle/password-prepared-target.mjs";
16
15
  import { TotpMapping, TotpMappingSource, TotpPersistenceServices } from "./drizzle/totp-model.mjs";
17
16
  import { PasskeyManagementMapping, PasskeyRegistrationMapping } from "./drizzle/passkey-write-model.mjs";
18
17
  import { PhoneMapping, PhoneMappingSource, PhonePersistenceServices } from "./drizzle/phone-model.mjs";
19
18
  import "./index.mjs";
19
+ import { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy.mjs";
20
20
  import { SuppliedService } from "./drizzle/SuppliedService.mjs";
21
21
  import { TotpCoordinatorError } from "./drizzle/totp-target.mjs";
22
22
  import { PhoneCoordinatorError } from "./drizzle/phone-target.mjs";
@@ -84,13 +84,13 @@ export declare const coordinateEmailAddress: {
84
84
  };
85
85
  }, import("@yielded/auth/Email").EmailUnavailable, Database>;
86
86
  export declare const coordinatePasswordPersistence: {
87
- <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, PM extends ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any> | undefined, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
88
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<A>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>;
87
+ <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, PM extends ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any> | undefined, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
88
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>;
89
89
  readonly proofMapping?: PM;
90
90
  readonly transaction?: never;
91
91
  }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Password").PasswordUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Password").PasswordPersistence>>;
92
- <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, PM extends ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any> | undefined, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
93
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<A>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>;
92
+ <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, PM extends ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any> | undefined, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
93
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>;
94
94
  readonly proofMapping?: PM;
95
95
  readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
96
96
  }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Password").PasswordUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Password").PasswordPersistence>>;
@@ -105,26 +105,17 @@ export declare const coordinatePasswordPersistence: {
105
105
  readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>>;
106
106
  readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
107
107
  }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Password").PasswordUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
108
- }, makePasswordPersistenceServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, NativeId>(mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<A>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>, proofMapping?: ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any>) => Effect.Effect<{
108
+ }, makePasswordPersistenceServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId>(mapping: import("@yielded/auth-persistence/Adapter").PasswordPersistenceMapping<DrizzleTableModel<S>, DrizzleTableModel<I>, DrizzleTableModel<C>, DrizzleTableModel<AC>, DrizzleTableModel<M>, NativeId, import("drizzle-orm").SQL<unknown>>, proofMapping?: ProofPersistenceMapping<any, any, any, any, any, any, any, any, any, any, any, any>) => Effect.Effect<{
109
109
  passwordPersistence: {
110
- readonly prepareAttempt: (input: {
110
+ readonly findCredential: (input: {
111
111
  readonly moduleId: string;
112
- readonly action: "sign-in" | "change";
113
112
  readonly identifier: import("@yielded/auth/Identity").LoginIdentifier;
114
113
  readonly subjectId?: import("@yielded/auth/Schema").SubjectId;
115
- readonly attemptLifetimeMillis: number;
116
- }) => Effect.Effect<import("@yielded/auth/Password").PasswordAttemptPreparation, import("@yielded/auth/Password").PasswordUnavailable>;
117
- readonly settleAttempt: <A_1>(input: {
118
- readonly moduleId: string;
119
- readonly attemptId: import("@yielded/auth/Password").PasswordAttemptId;
120
- readonly captured?: import("@yielded/auth/Password").PasswordCredentialSnapshot;
121
- readonly outcome: import("@yielded/auth/Password").PasswordAttemptDecision;
122
- readonly rehash?: {
123
- readonly expectedVersion: import("@yielded/auth/Sessions").SecurityRevision;
124
- readonly expectedVerifier: import("effect/Redacted").Redacted<import("@yielded/auth/Password").EncodedPasswordHash>;
125
- readonly nextVerifier: import("effect/Redacted").Redacted<import("@yielded/auth/Password").EncodedPasswordHash>;
126
- };
127
- }, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordAttemptDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Password").PasswordUnavailable>;
114
+ }) => Effect.Effect<import("effect/Option").Option<import("@yielded/auth/Password").PasswordCredentialSnapshot>, import("@yielded/auth/Password").PasswordUnavailable>;
115
+ readonly rehashIfCurrent: (input: {
116
+ readonly credential: import("@yielded/auth/Password").PasswordCredentialSnapshot;
117
+ readonly nextVerifier: import("effect/Redacted").Redacted<import("@yielded/auth/Password").EncodedPasswordHash>;
118
+ }) => Effect.Effect<void, import("@yielded/auth/Password").PasswordUnavailable>;
128
119
  readonly readForSubject: (input: {
129
120
  readonly moduleId: string;
130
121
  readonly subjectId: import("@yielded/auth/Schema").SubjectId;
@@ -133,19 +124,12 @@ export declare const coordinatePasswordPersistence: {
133
124
  readonly moduleId: string;
134
125
  readonly identifier: import("@yielded/auth/Identity").LoginIdentifier;
135
126
  }) => Effect.Effect<import("effect/Option").Option<import("@yielded/auth/Password").PasswordCredentialSnapshot>, import("@yielded/auth/Password").PasswordUnavailable>;
136
- readonly addIfAbsent: <A_1>(input: import("@yielded/auth/Password").PasswordMutationInput, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Password").PasswordUnavailable>;
137
- readonly replaceIfCurrent: <A_1>(input: import("@yielded/auth/Password").PasswordMutationInput, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Password").PasswordUnavailable>;
127
+ readonly addIfAbsent: <A>(input: import("@yielded/auth/Password").PasswordMutationInput, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Password").PasswordUnavailable>;
128
+ readonly replaceIfCurrent: <A>(input: import("@yielded/auth/Password").PasswordMutationInput, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Password").PasswordUnavailable>;
138
129
  readonly checkReset: (input: import("@yielded/auth/Proofs").ProofCompletionInput) => Effect.Effect<boolean, import("@yielded/auth/Password").PasswordUnavailable>;
139
- readonly resetWithProof: <A_1>(input: import("@yielded/auth/Password").PasswordMutationInput & {
130
+ readonly resetWithProof: <A>(input: import("@yielded/auth/Password").PasswordMutationInput & {
140
131
  readonly completion: import("@yielded/auth/Proofs").ProofCompletionPlan;
141
- }, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Password").PasswordUnavailable>;
142
- readonly cleanupAttempts: <A_1>(input: {
143
- readonly moduleId: string;
144
- readonly limit: number;
145
- }, prepare: import("@yielded/auth/Password").PreparePasswordCommit<{
146
- readonly removed: number;
147
- readonly hasMore: boolean;
148
- }, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Password").PasswordUnavailable>;
132
+ }, prepare: import("@yielded/auth/Password").PreparePasswordCommit<import("@yielded/auth/Password").PasswordMutationDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Password").PasswordUnavailable>;
149
133
  };
150
134
  }, import("@yielded/auth/Password").PasswordUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makePasswordRegistrationServices: <Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId>(mapping: PasswordRegistrationMapping<Registration, S, I, C, AC, Rq, NativeId>) => Effect.Effect<{
151
135
  registrationAuthority: import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>;
@@ -256,7 +240,7 @@ export declare const coordinateAuthenticationAuthority: {
256
240
  }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Sessions").SessionUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, PersistenceId | RepositoryId | TxId>>;
257
241
  }, makeAuthenticationAuthorityServices: <Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId>(mapping: AuthenticationAuthorityMapping<Claims, S, C, F, P, NativeId>) => Effect.Effect<{
258
242
  authenticationAuthority: {
259
- readonly capture: (subjectId: import("@yielded/auth/Schema").SubjectId, credentialIds: ReadonlyArray<string>) => Effect.Effect<import("@yielded/auth/Sessions").AuthenticationRevision, import("@yielded/auth/Sessions").StaleAuthentication | import("@yielded/auth/Sessions").SessionUnavailable>;
243
+ readonly capture: (subjectId: import("@yielded/auth/Schema").SubjectId, credentialIds: ReadonlyArray<string>) => Effect.Effect<import("@yielded/auth/Sessions").AuthenticationCapture, import("@yielded/auth/Sessions").StaleAuthentication | import("@yielded/auth/Sessions").SessionUnavailable>;
260
244
  readonly requirements: (evidence: import("@yielded/auth/Sessions").AuthenticationEvidence) => Effect.Effect<import("@yielded/auth/Sessions").AuthenticationRequirement, import("@yielded/auth/Sessions").StaleAuthentication | import("@yielded/auth/Sessions").SessionUnavailable>;
261
245
  readonly approve: <A>(input: {
262
246
  readonly evidence: import("@yielded/auth/Sessions").AuthenticationEvidence;
@@ -306,17 +290,17 @@ export declare const makeExternalIdentityServices: <Subject extends AnySQLiteTab
306
290
  readonly bind: (subjectId: import("@yielded/auth/Schema").SubjectId, identity: import("@yielded/auth/Identity").ExternalIdentity) => Effect.Effect<void, import("@yielded/auth/Identity").IdentityConflict | import("@yielded/auth/Identity").IdentityUnavailable>;
307
291
  };
308
292
  }, import("@yielded/auth/Identity").IdentityUnavailable, Database>;
309
- export declare const makePasswordPreparedPersistenceServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable = AnySQLiteTable, PC extends AnySQLiteTable = AnySQLiteTable, PM extends AnySQLiteTable = AnySQLiteTable, PSub extends AnySQLiteTable = AnySQLiteTable, PI extends AnySQLiteTable = AnySQLiteTable, PCr extends AnySQLiteTable = AnySQLiteTable, PNativeId = unknown>(mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, A, M, T, B, NativeId>, proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined) => Effect.Effect<{
293
+ export declare const makePasswordPreparedPersistenceServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable = AnySQLiteTable, PC extends AnySQLiteTable = AnySQLiteTable, PM extends AnySQLiteTable = AnySQLiteTable, PSub extends AnySQLiteTable = AnySQLiteTable, PI extends AnySQLiteTable = AnySQLiteTable, PCr extends AnySQLiteTable = AnySQLiteTable, PNativeId = unknown>(mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, M, T, B, NativeId>, proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined) => Effect.Effect<{
310
294
  passwordPreparedPersistence: import("@yielded/auth/Password").PasswordPreparedPersistence;
311
295
  }, import("@yielded/auth/Password").PasswordUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinatePasswordPreparedPersistence: {
312
- <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable, PC extends AnySQLiteTable, PM extends AnySQLiteTable, PSub extends AnySQLiteTable, PI extends AnySQLiteTable, PCr extends AnySQLiteTable, PNativeId, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
313
- readonly mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, A, M, T, B, NativeId>;
296
+ <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable, PC extends AnySQLiteTable, PM extends AnySQLiteTable, PSub extends AnySQLiteTable, PI extends AnySQLiteTable, PCr extends AnySQLiteTable, PNativeId, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
297
+ readonly mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, M, T, B, NativeId>;
314
298
  readonly proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined;
315
299
  readonly target: SuppliedService<TargetId, import("@yielded/auth/Password").PasswordPreparedPersistence>;
316
300
  readonly transaction?: never;
317
301
  }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Password").PasswordUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
318
- <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, A extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable, PC extends AnySQLiteTable, PM extends AnySQLiteTable, PSub extends AnySQLiteTable, PI extends AnySQLiteTable, PCr extends AnySQLiteTable, PNativeId, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
319
- readonly mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, A, M, T, B, NativeId>;
302
+ <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, T extends AnySQLiteTable, B extends AnySQLiteTable, NativeId, PS extends AnySQLiteTable, PC extends AnySQLiteTable, PM extends AnySQLiteTable, PSub extends AnySQLiteTable, PI extends AnySQLiteTable, PCr extends AnySQLiteTable, PNativeId, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
303
+ readonly mapping: PasswordPreparedPersistenceMapping<S, I, C, AC, M, T, B, NativeId>;
320
304
  readonly proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined;
321
305
  readonly target: SuppliedService<TargetId, import("@yielded/auth/Password").PasswordPreparedPersistence>;
322
306
  readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
@@ -486,8 +470,6 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
486
470
  readonly _tag: "Ambiguous";
487
471
  } | {
488
472
  readonly _tag: "Cancelled";
489
- } | {
490
- readonly _tag: "Conflict";
491
473
  } | {
492
474
  readonly _tag: "Linked";
493
475
  readonly credential: {
@@ -509,6 +491,8 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
509
491
  };
510
492
  };
511
493
  readonly changed: boolean;
494
+ } | {
495
+ readonly _tag: "Conflict";
512
496
  }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
513
497
  readonly inspectUnlink: (input: {
514
498
  readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
@@ -546,7 +530,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
546
530
  readonly credentialId: string;
547
531
  readonly invalidation: {
548
532
  readonly trigger: "all-session-revocation" | "credential-change" | "factor-reset" | "identifier-change" | "password-reset" | "subject-delete" | "subject-disable";
549
- readonly existingSessions: "immediate" | "original-absolute-expiry";
533
+ readonly existingSessions: "cache-expiry" | "immediate" | "original-absolute-expiry";
550
534
  readonly maximumExposureMillis: number;
551
535
  readonly oldAuthenticationEvidence: "rejected";
552
536
  };
@@ -571,7 +555,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
571
555
  readonly credentialId: string;
572
556
  readonly invalidation: {
573
557
  readonly trigger: "all-session-revocation" | "credential-change" | "factor-reset" | "identifier-change" | "password-reset" | "subject-delete" | "subject-disable";
574
- readonly existingSessions: "immediate" | "original-absolute-expiry";
558
+ readonly existingSessions: "cache-expiry" | "immediate" | "original-absolute-expiry";
575
559
  readonly maximumExposureMillis: number;
576
560
  readonly oldAuthenticationEvidence: "rejected";
577
561
  };
@@ -666,7 +650,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
666
650
  }>, R extends AnySQLiteTable<{
667
651
  dialect: "sqlite";
668
652
  }>, N>(mapping: OAuthRegistrationMapping<Registration, S, O, C, AC, TA, I, R, N>) => Effect.Effect<{
669
- registrationAuthority: OAuthRegistrationAuthority<Registration>;
653
+ registrationAuthority: import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>;
670
654
  }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateOAuthRegistration: {
671
655
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable<{
672
656
  dialect: "sqlite";
@@ -684,9 +668,9 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
684
668
  dialect: "sqlite";
685
669
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
686
670
  readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, TA, I, Rq, N>;
687
- readonly target: SuppliedService<TargetId, OAuthRegistrationAuthority<Registration>>;
671
+ readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>>;
688
672
  readonly transaction?: never;
689
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
673
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
690
674
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable<{
691
675
  dialect: "sqlite";
692
676
  }>, O extends AnySQLiteTable<{
@@ -703,11 +687,11 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
703
687
  dialect: "sqlite";
704
688
  }>, N, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
705
689
  readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, TA, I, Rq, N>;
706
- readonly target: SuppliedService<TargetId, OAuthRegistrationAuthority<Registration>>;
690
+ readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>>;
707
691
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
708
692
  readonly transaction: (...args: any[]) => any;
709
693
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
710
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
694
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
711
695
  }, coordinateOAuthSignIn: {
712
696
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
713
697
  dialect: "sqlite";
@@ -722,7 +706,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
722
706
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
723
707
  readonly mapping: OAuthSignInMapping<S, O, C, AC, F, N>;
724
708
  readonly transaction?: never;
725
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthSignInPersistence>>;
709
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthSignInPersistence>>;
726
710
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
727
711
  dialect: "sqlite";
728
712
  }>, O extends AnySQLiteTable<{
@@ -738,7 +722,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
738
722
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
739
723
  readonly transaction: (...args: any[]) => any;
740
724
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
741
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthSignInPersistence>>;
725
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthSignInPersistence>>;
742
726
  }, coordinateOAuthRegistrationIntents: {
743
727
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
744
728
  dialect: "sqlite";
@@ -757,7 +741,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
757
741
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
758
742
  readonly mapping: OAuthRegistrationIntentMapping<S, O, C, AC, F, TA, I, N>;
759
743
  readonly transaction?: never;
760
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthRegistrationIntents>>;
744
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthRegistrationIntents>>;
761
745
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
762
746
  dialect: "sqlite";
763
747
  }>, O extends AnySQLiteTable<{
@@ -777,7 +761,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
777
761
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
778
762
  readonly transaction: (...args: any[]) => any;
779
763
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
780
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthRegistrationIntents>>;
764
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthRegistrationIntents>>;
781
765
  }, coordinateOAuthAccounts: {
782
766
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
783
767
  dialect: "sqlite";
@@ -796,7 +780,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
796
780
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
797
781
  readonly mapping: OAuthAccountsMapping<S, O, C, AC, F, TA, U, N>;
798
782
  readonly transaction?: never;
799
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthAccountsPersistence>>;
783
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthAccountsPersistence>>;
800
784
  <Database extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
801
785
  dialect: "sqlite";
802
786
  }>, O extends AnySQLiteTable<{
@@ -816,7 +800,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
816
800
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
817
801
  readonly transaction: (...args: any[]) => any;
818
802
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
819
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthAccountsPersistence>>;
803
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthAccountsPersistence>>;
820
804
  }, makeOAuthConnectedServices: <S extends AnySQLiteTable<{
821
805
  dialect: "sqlite";
822
806
  }>, AC extends AnySQLiteTable<{
@@ -1543,8 +1527,6 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1543
1527
  readonly profileKey: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1544
1528
  }) => Effect.Effect<{
1545
1529
  readonly _tag: "Rejected";
1546
- } | {
1547
- readonly _tag: "ReauthorizationRequired";
1548
1530
  } | {
1549
1531
  readonly _tag: "Busy";
1550
1532
  } | {
@@ -1616,6 +1598,8 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1616
1598
  readonly ciphertext: import("effect/Redacted").Redacted<string>;
1617
1599
  };
1618
1600
  };
1601
+ } | {
1602
+ readonly _tag: "ReauthorizationRequired";
1619
1603
  }, import("@yielded/auth/OAuth").OAuthUnavailable>;
1620
1604
  readonly claimRefresh: <A>(input: {
1621
1605
  readonly grant: import("@yielded/auth/OAuth").OAuthConnectedStoredGrant;
@@ -1625,10 +1609,10 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1625
1609
  readonly lifetimeMillis: number;
1626
1610
  }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1627
1611
  readonly _tag: "Rejected";
1628
- } | {
1629
- readonly _tag: "ReauthorizationRequired";
1630
1612
  } | {
1631
1613
  readonly _tag: "Busy";
1614
+ } | {
1615
+ readonly _tag: "ReauthorizationRequired";
1632
1616
  } | {
1633
1617
  readonly _tag: "Claimed";
1634
1618
  readonly claim: {
@@ -1791,10 +1775,10 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1791
1775
  readonly lifetimeMillis: number;
1792
1776
  }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1793
1777
  readonly _tag: "Rejected";
1794
- } | {
1795
- readonly _tag: "ReauthorizationRequired";
1796
1778
  } | {
1797
1779
  readonly _tag: "Busy";
1780
+ } | {
1781
+ readonly _tag: "ReauthorizationRequired";
1798
1782
  } | {
1799
1783
  readonly _tag: "Admitted";
1800
1784
  readonly admissionId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
@@ -1943,7 +1927,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1943
1927
  }>, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1944
1928
  readonly mapping: OAuthConnectedMapping<S, AC, T, O, F, G, C, H, UA, DC, N, J>;
1945
1929
  readonly transaction?: never;
1946
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthConnectedPersistence>>;
1930
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthConnectedPersistence>>;
1947
1931
  <D extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
1948
1932
  dialect: "sqlite";
1949
1933
  }>, AC extends AnySQLiteTable<{
@@ -1971,7 +1955,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1971
1955
  readonly transaction: SuppliedService<TxId, NoInfer<D extends {
1972
1956
  readonly transaction: (...args: any[]) => any;
1973
1957
  } ? Parameters<Parameters<D["transaction"]>[0]>[0] : never>, TxShape>;
1974
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthConnectedPersistence>>;
1958
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthConnectedPersistence>>;
1975
1959
  }, coordinateOAuthConnectedRevocations: {
1976
1960
  <D extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, T extends AnySQLiteTable<{
1977
1961
  dialect: "sqlite";
@@ -1990,7 +1974,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
1990
1974
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1991
1975
  readonly mapping: OAuthConnectedRevocationMapping<T, O, F, G, C, H, J, N>;
1992
1976
  readonly transaction?: never;
1993
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthConnectedRevocations>>;
1977
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/OAuth").OAuthConnectedRevocations>>;
1994
1978
  <D extends EffectSQLiteBunDatabase<import("drizzle-orm").TablesRelationalConfig>, T extends AnySQLiteTable<{
1995
1979
  dialect: "sqlite";
1996
1980
  }>, O extends AnySQLiteTable<{
@@ -2010,7 +1994,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
2010
1994
  readonly transaction: SuppliedService<TxId, NoInfer<D extends {
2011
1995
  readonly transaction: (...args: any[]) => any;
2012
1996
  } ? Parameters<Parameters<D["transaction"]>[0]>[0] : never>, TxShape>;
2013
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthConnectedRevocations>>;
1997
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").OAuthCoordinatorError<E>, DatabaseRequirements | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/OAuth").OAuthConnectedRevocations>>;
2014
1998
  };
2015
1999
  export declare const makePasskeyCredentialServices: <S extends AnySQLiteTable<{
2016
2000
  dialect: "sqlite";
@@ -2362,5 +2346,5 @@ export declare const AuthPersistence: {
2362
2346
  migrationsLayer: (options: import("drizzle-orm/migrator").MigrationConfig) => Layer.Layer<never, import("drizzle-orm/effect-core").EffectDrizzleQueryError | import("drizzle-orm/effect-core").MigratorInitError | import("@yielded/auth-persistence/Adapter").PersistenceConfigurationError | import("effect/sql/SqlError").SqlError, import("@effect/sql-sqlite-bun/SqliteClient").SqliteClient>;
2363
2347
  };
2364
2348
  //#endregion
2365
- export { passwordPreparedPersistenceLayer };
2349
+ export { OAuthProxyPersistence, passwordPreparedPersistenceLayer };
2366
2350
  //# sourceMappingURL=SqliteBun.d.mts.map
@@ -4,6 +4,7 @@ import { sqlClientOAuthStandaloneGuard } from "./drizzle/oauth-target.mjs";
4
4
  import { sqlClientPasswordStandaloneGuard } from "./drizzle/password-target.mjs";
5
5
  import { passwordPreparedPersistenceLayer } from "./drizzle/password-prepared-target.mjs";
6
6
  import { sqlClientProofStandaloneGuard } from "./drizzle/proof-target.mjs";
7
+ import { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy.mjs";
7
8
  import { nativeDatabase } from "./drizzle/native-database.mjs";
8
9
  import { makeTotpTarget, sqlClientTotpStandaloneGuard } from "./drizzle/totp-target.mjs";
9
10
  import { sqlClientPasskeyStandaloneGuard } from "./drizzle/passkey-target.mjs";
@@ -67,6 +68,6 @@ const AuthPersistence = {
67
68
  migrationsLayer: drizzleMigrationsLayer(makeWithDefaults({}), Effect.promise(() => import("drizzle-orm/effect-sqlite-bun/migrator")).pipe(Effect.map((module) => module.migrate)))
68
69
  };
69
70
  //#endregion
70
- export { AuthPersistence, Database, commitMode, coordinateAuthenticationAuthority, coordinateEmailAddress, coordinateEmailRegistration, coordinateOAuthAccounts, coordinateOAuthConnected, coordinateOAuthConnectedRevocations, coordinateOAuthRegistration, coordinateOAuthRegistrationIntents, coordinateOAuthSignIn, coordinatePasskeyManagement, coordinatePasskeyPersistence, coordinatePasskeyRegistration, coordinatePasskeyRegistrationCeremony, coordinatePasswordPersistence, coordinatePasswordPreparedPersistence, coordinatePasswordRegistration, coordinatePendingAuthentication, coordinatePhonePersistence, coordinateProofPersistence, coordinateSessionStepUp, coordinateSignedSessionValidity, coordinateStatefulSessions, coordinateTotpPersistence, databaseLayer, makeAuthenticationAuthorityServices, makeEmailAddressServices, makeEmailRegistrationServices, makeEmailSignInServices, makeExternalIdentityServices, makeIdentityServices, makeOAuthAccountsServices, makeOAuthConnectedRevocationServices, makeOAuthConnectedServices, makeOAuthRegistrationIntentServices, makeOAuthRegistrationServices, makeOAuthSignInServices, makePasskeyCredentialServices, makePasskeyEnrollmentContextServices, makePasskeyManagementServices, makePasskeyPersistenceServices, makePasskeyRegistrationCeremonyServices, makePasskeyRegistrationServices, makePasswordPersistenceServices, makePasswordPreparedPersistenceServices, makePasswordRegistrationServices, makePendingAuthenticationServices, makePhonePersistenceServices, makeProofPersistenceServices, makeSessionStepUpServices, makeSignedSessionValidityServices, makeStatefulSessionServices, makeSubjectProvisioningServices, makeTotpPersistenceServices, passwordPreparedPersistenceLayer };
71
+ export { AuthPersistence, Database, OAuthProxyPersistence, commitMode, coordinateAuthenticationAuthority, coordinateEmailAddress, coordinateEmailRegistration, coordinateOAuthAccounts, coordinateOAuthConnected, coordinateOAuthConnectedRevocations, coordinateOAuthRegistration, coordinateOAuthRegistrationIntents, coordinateOAuthSignIn, coordinatePasskeyManagement, coordinatePasskeyPersistence, coordinatePasskeyRegistration, coordinatePasskeyRegistrationCeremony, coordinatePasswordPersistence, coordinatePasswordPreparedPersistence, coordinatePasswordRegistration, coordinatePendingAuthentication, coordinatePhonePersistence, coordinateProofPersistence, coordinateSessionStepUp, coordinateSignedSessionValidity, coordinateStatefulSessions, coordinateTotpPersistence, databaseLayer, makeAuthenticationAuthorityServices, makeEmailAddressServices, makeEmailRegistrationServices, makeEmailSignInServices, makeExternalIdentityServices, makeIdentityServices, makeOAuthAccountsServices, makeOAuthConnectedRevocationServices, makeOAuthConnectedServices, makeOAuthRegistrationIntentServices, makeOAuthRegistrationServices, makeOAuthSignInServices, makePasskeyCredentialServices, makePasskeyEnrollmentContextServices, makePasskeyManagementServices, makePasskeyPersistenceServices, makePasskeyRegistrationCeremonyServices, makePasskeyRegistrationServices, makePasswordPersistenceServices, makePasswordPreparedPersistenceServices, makePasswordRegistrationServices, makePendingAuthenticationServices, makePhonePersistenceServices, makeProofPersistenceServices, makeSessionStepUpServices, makeSignedSessionValidityServices, makeStatefulSessionServices, makeSubjectProvisioningServices, makeTotpPersistenceServices, passwordPreparedPersistenceLayer };
71
72
 
72
73
  //# sourceMappingURL=SqliteBun.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SqliteBun.mjs","names":[],"sources":["../src/SqliteBun.ts"],"sourcesContent":["import { NativeDatabase } from \"@yielded/auth-persistence/Adapter\";\nimport type { AnyRelations } from \"drizzle-orm\";\nimport { type EffectSQLiteBunDatabase, makeWithDefaults } from \"drizzle-orm/effect-sqlite-bun\";\nimport type { AnySQLiteTable } from \"drizzle-orm/sqlite-core\";\nimport { Context, Effect, Layer } from \"effect\";\n\nimport { nativeDatabase } from \"./drizzle/native-database\";\n\n/** The application-owned Drizzle database used to construct persistence services. */\nexport class Database extends Context.Service<Database, EffectSQLiteBunDatabase<AnyRelations>>()(\n \"effect-auth/persistence-drizzle/SqliteBun/Database\",\n) {}\n\n/** Construct Drizzle from the driver's SQL-client Layer. */\nexport const databaseLayer = Layer.effect(Database, makeWithDefaults({}));\n\nimport { sqlClientEmailStandaloneGuard } from \"./drizzle/email-target\";\nimport type {\n ExternalIdentityTables,\n IdentityTables,\n SubjectProvisioningTables,\n} from \"./drizzle/model\";\nimport { sqlClientPasswordStandaloneGuard } from \"./drizzle/password-target\";\nimport { sqlClientProofStandaloneGuard } from \"./drizzle/proof-target\";\nimport { sqlClientSessionStandaloneGuard } from \"./drizzle/session-target\";\nimport { makeSqliteEmailTarget, sqliteEmailConfiguration } from \"./drizzle/sqlite-emails\";\nimport {\n makeSqliteExternalIdentityServices,\n makeSqliteIdentityServices,\n makeSqliteSubjectProvisioningServices,\n} from \"./drizzle/sqlite-identity\";\nimport { makeSqlitePasswordTarget, sqlitePasswordConfiguration } from \"./drizzle/sqlite-passwords\";\nimport { makeSqliteProofTarget, sqliteProofConfiguration } from \"./drizzle/sqlite-proofs\";\nimport { makeSqliteSessionTarget, sqliteSessionConfiguration } from \"./drizzle/sqlite-sessions\";\n\nconst sessionTarget = makeSqliteSessionTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) => sqliteSessionConfiguration(\"interactive\", sqlClientSessionStandaloneGuard(service)),\n);\n\nconst proofTarget = makeSqliteProofTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) => sqliteProofConfiguration(\"interactive\", sqlClientProofStandaloneGuard(service)),\n);\n\nconst passwordTarget = makeSqlitePasswordTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) =>\n sqlitePasswordConfiguration(\n \"interactive\",\n sqlClientPasswordStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nconst emailTarget = makeSqliteEmailTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) =>\n sqliteEmailConfiguration(\n \"interactive\",\n sqlClientEmailStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nexport const {\n coordinateEmailAddress,\n coordinateEmailRegistration,\n makeEmailAddressServices,\n makeEmailRegistrationServices,\n makeEmailSignInServices,\n} = emailTarget;\n\nexport const {\n coordinatePasswordPersistence,\n coordinatePasswordRegistration,\n makePasswordPersistenceServices,\n makePasswordRegistrationServices,\n} = passwordTarget;\n\nexport const { coordinateProofPersistence, makeProofPersistenceServices } = proofTarget;\n\nexport const {\n coordinateAuthenticationAuthority,\n coordinatePendingAuthentication,\n coordinateSignedSessionValidity,\n coordinateStatefulSessions,\n makeAuthenticationAuthorityServices,\n makePendingAuthenticationServices,\n makeSessionStepUpServices,\n coordinateSessionStepUp,\n makeSignedSessionValidityServices,\n makeStatefulSessionServices,\n} = sessionTarget;\n\nexport const commitMode = \"interactive\" as const;\n\nexport const makeIdentityServices = <\n Subject extends AnySQLiteTable,\n Identifier extends AnySQLiteTable,\n External extends AnySQLiteTable,\n Request extends AnySQLiteTable,\n NativeId,\n>(\n mapping: IdentityTables<Subject, Identifier, External, Request, NativeId>,\n) =>\n makeSqliteIdentityServices(mapping, \"interactive\").pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nexport const makeSubjectProvisioningServices = <\n Subject extends AnySQLiteTable,\n Identifier extends AnySQLiteTable,\n Request extends AnySQLiteTable,\n NativeId,\n>(\n mapping: SubjectProvisioningTables<Subject, Identifier, Request, NativeId>,\n) =>\n makeSqliteSubjectProvisioningServices(mapping, \"interactive\").pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nexport const makeExternalIdentityServices = <\n Subject extends AnySQLiteTable,\n External extends AnySQLiteTable,\n NativeId,\n>(\n mapping: ExternalIdentityTables<Subject, External, NativeId>,\n) =>\n makeSqliteExternalIdentityServices(mapping).pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nimport { makeSqlitePasswordPreparedTarget } from \"./drizzle/sqlite-password-prepared\";\n\nconst passwordPreparedTarget = makeSqlitePasswordPreparedTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>\n>(Database, (service) =>\n sqlitePasswordConfiguration(\n \"interactive\",\n sqlClientPasswordStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nexport const { makePasswordPreparedPersistenceServices, coordinatePasswordPreparedPersistence } =\n passwordPreparedTarget;\n\nexport { passwordPreparedPersistenceLayer } from \"./drizzle/password-prepared-target\";\n\nimport { makeOAuthTarget } from \"./drizzle/oauth-drivers\";\nimport { sqlClientOAuthStandaloneGuard } from \"./drizzle/oauth-target\";\n\nconst oauthTarget = makeOAuthTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientOAuthStandaloneGuard,\n});\n\nexport const {\n makeOAuthAccountsServices,\n makeOAuthSignInServices,\n makeOAuthRegistrationIntentServices,\n makeOAuthRegistrationServices,\n coordinateOAuthRegistration,\n coordinateOAuthSignIn,\n coordinateOAuthRegistrationIntents,\n coordinateOAuthAccounts,\n makeOAuthConnectedServices,\n makeOAuthConnectedRevocationServices,\n coordinateOAuthConnected,\n coordinateOAuthConnectedRevocations,\n} = oauthTarget;\n\nimport { makePasskeyTarget } from \"./drizzle/passkey-drivers\";\nimport { sqlClientPasskeyStandaloneGuard } from \"./drizzle/passkey-target\";\n\nconst passkeyTarget = makePasskeyTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientPasskeyStandaloneGuard,\n});\n\nexport const {\n makePasskeyCredentialServices,\n makePasskeyPersistenceServices,\n makePasskeyEnrollmentContextServices,\n makePasskeyRegistrationCeremonyServices,\n coordinatePasskeyPersistence,\n coordinatePasskeyRegistrationCeremony,\n makePasskeyManagementServices,\n makePasskeyRegistrationServices,\n coordinatePasskeyManagement,\n coordinatePasskeyRegistration,\n} = passkeyTarget;\n\nimport { makeTotpTarget, sqlClientTotpStandaloneGuard } from \"./drizzle/totp-target\";\n\nconst totpTarget = makeTotpTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientTotpStandaloneGuard,\n});\n\nexport const { makeTotpPersistenceServices, coordinateTotpPersistence } = totpTarget;\n\nimport { makePhoneTarget, sqlClientPhoneStandaloneGuard } from \"./drizzle/phone-target\";\n\nconst phoneTarget = makePhoneTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientPhoneStandaloneGuard,\n});\n\nexport const { makePhonePersistenceServices, coordinatePhonePersistence } = phoneTarget;\n\nimport { drizzleMigrationsLayer } from \"./internal/drizzle-migrations\";\nimport { sqlitePersistence } from \"./internal/drizzle-sqlite\";\n\nexport const AuthPersistence = {\n ...sqlitePersistence(makeWithDefaults({})),\n migrationsLayer: drizzleMigrationsLayer(\n makeWithDefaults({}),\n Effect.promise(() => import(\"drizzle-orm/effect-sqlite-bun/migrator\")).pipe(\n Effect.map((module) => module.migrate),\n ),\n ),\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AASA,IAAa,WAAb,cAA8B,QAAQ,QAAyD,CAAC,CAC9F,oDACF,CAAC,CAAC,CAAC;;AAGH,MAAa,gBAAgB,MAAM,OAAO,UAAU,iBAAiB,CAAC,CAAC,CAAC;AAqBxE,MAAM,gBAAgB,wBACpB,WACC,YAAY,2BAA2B,eAAe,gCAAgC,OAAO,CAAC,CACjG;AAEA,MAAM,cAAc,sBAClB,WACC,YAAY,yBAAyB,eAAe,8BAA8B,OAAO,CAAC,CAC7F;AAEA,MAAM,iBAAiB,yBACrB,WACC,YACC,4BACE,eACA,iCAAiC,OAAO,GACxC,8BAA8B,OAAO,CACvC,CACJ;AAYA,MAAa,EACX,wBACA,6BACA,0BACA,+BACA,4BAfkB,sBAClB,WACC,YACC,yBACE,eACA,8BAA8B,OAAO,GACrC,8BAA8B,OAAO,CACvC,CASA;AAEJ,MAAa,EACX,+BACA,gCACA,iCACA,qCACE;AAEJ,MAAa,EAAE,4BAA4B,iCAAiC;AAE5E,MAAa,EACX,mCACA,iCACA,iCACA,4BACA,qCACA,mCACA,2BACA,yBACA,mCACA,gCACE;AAEJ,MAAa,aAAa;AAE1B,MAAa,wBAOX,YAEA,2BAA2B,SAAS,aAAa,CAAC,CAAC,KACjD,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAEF,MAAa,mCAMX,YAEA,sCAAsC,SAAS,aAAa,CAAC,CAAC,KAC5D,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAEF,MAAa,gCAKX,YAEA,mCAAmC,OAAO,CAAC,CAAC,KAC1C,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAeF,MAAa,EAAE,yCAAyC,0CAXzB,iCAG7B,WAAW,YACX,4BACE,eACA,iCAAiC,OAAO,GACxC,8BAA8B,OAAO,CACvC,CAIA;AAkBF,MAAa,EACX,2BACA,yBACA,qCACA,+BACA,6BACA,uBACA,oCACA,yBACA,4BACA,sCACA,0BACA,wCAvBkB,gBAIlB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAeI;AAgBJ,MAAa,EACX,+BACA,gCACA,sCACA,yCACA,8BACA,uCACA,+BACA,iCACA,6BACA,kCArBoB,kBAIpB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAaI;AAeJ,MAAa,EAAE,6BAA6B,8BAXzB,eAIjB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAE0E;AAe1E,MAAa,EAAE,8BAA8B,+BAXzB,gBAIlB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAE4E;AAK5E,MAAa,kBAAkB;CAC7B,GAAG,kBAAkB,iBAAiB,CAAC,CAAC,CAAC;CACzC,iBAAiB,uBACf,iBAAiB,CAAC,CAAC,GACnB,OAAO,cAAc,OAAO,yCAAyC,CAAC,CAAC,KACrE,OAAO,KAAK,WAAW,OAAO,OAAO,CACvC,CACF;AACF"}
1
+ {"version":3,"file":"SqliteBun.mjs","names":[],"sources":["../src/SqliteBun.ts"],"sourcesContent":["import { NativeDatabase } from \"@yielded/auth-persistence/Adapter\";\nexport { OAuthProxyPersistence } from \"./internal/drizzle-sqlite-oauth-proxy\";\n\nimport type { AnyRelations } from \"drizzle-orm\";\nimport { type EffectSQLiteBunDatabase, makeWithDefaults } from \"drizzle-orm/effect-sqlite-bun\";\nimport type { AnySQLiteTable } from \"drizzle-orm/sqlite-core\";\nimport { Context, Effect, Layer } from \"effect\";\n\nimport { nativeDatabase } from \"./drizzle/native-database\";\n\n/** The application-owned Drizzle database used to construct persistence services. */\nexport class Database extends Context.Service<Database, EffectSQLiteBunDatabase<AnyRelations>>()(\n \"effect-auth/persistence-drizzle/SqliteBun/Database\",\n) {}\n\n/** Construct Drizzle from the driver's SQL-client Layer. */\nexport const databaseLayer = Layer.effect(Database, makeWithDefaults({}));\n\nimport { sqlClientEmailStandaloneGuard } from \"./drizzle/email-target\";\nimport type {\n ExternalIdentityTables,\n IdentityTables,\n SubjectProvisioningTables,\n} from \"./drizzle/model\";\nimport { sqlClientPasswordStandaloneGuard } from \"./drizzle/password-target\";\nimport { sqlClientProofStandaloneGuard } from \"./drizzle/proof-target\";\nimport { sqlClientSessionStandaloneGuard } from \"./drizzle/session-target\";\nimport { makeSqliteEmailTarget, sqliteEmailConfiguration } from \"./drizzle/sqlite-emails\";\nimport {\n makeSqliteExternalIdentityServices,\n makeSqliteIdentityServices,\n makeSqliteSubjectProvisioningServices,\n} from \"./drizzle/sqlite-identity\";\nimport { makeSqlitePasswordTarget, sqlitePasswordConfiguration } from \"./drizzle/sqlite-passwords\";\nimport { makeSqliteProofTarget, sqliteProofConfiguration } from \"./drizzle/sqlite-proofs\";\nimport { makeSqliteSessionTarget, sqliteSessionConfiguration } from \"./drizzle/sqlite-sessions\";\n\nconst sessionTarget = makeSqliteSessionTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) => sqliteSessionConfiguration(\"interactive\", sqlClientSessionStandaloneGuard(service)),\n);\n\nconst proofTarget = makeSqliteProofTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) => sqliteProofConfiguration(\"interactive\", sqlClientProofStandaloneGuard(service)),\n);\n\nconst passwordTarget = makeSqlitePasswordTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) =>\n sqlitePasswordConfiguration(\n \"interactive\",\n sqlClientPasswordStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nconst emailTarget = makeSqliteEmailTarget<Database, EffectSQLiteBunDatabase<AnyRelations>>(\n Database,\n (service) =>\n sqliteEmailConfiguration(\n \"interactive\",\n sqlClientEmailStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nexport const {\n coordinateEmailAddress,\n coordinateEmailRegistration,\n makeEmailAddressServices,\n makeEmailRegistrationServices,\n makeEmailSignInServices,\n} = emailTarget;\n\nexport const {\n coordinatePasswordPersistence,\n coordinatePasswordRegistration,\n makePasswordPersistenceServices,\n makePasswordRegistrationServices,\n} = passwordTarget;\n\nexport const { coordinateProofPersistence, makeProofPersistenceServices } = proofTarget;\n\nexport const {\n coordinateAuthenticationAuthority,\n coordinatePendingAuthentication,\n coordinateSignedSessionValidity,\n coordinateStatefulSessions,\n makeAuthenticationAuthorityServices,\n makePendingAuthenticationServices,\n makeSessionStepUpServices,\n coordinateSessionStepUp,\n makeSignedSessionValidityServices,\n makeStatefulSessionServices,\n} = sessionTarget;\n\nexport const commitMode = \"interactive\" as const;\n\nexport const makeIdentityServices = <\n Subject extends AnySQLiteTable,\n Identifier extends AnySQLiteTable,\n External extends AnySQLiteTable,\n Request extends AnySQLiteTable,\n NativeId,\n>(\n mapping: IdentityTables<Subject, Identifier, External, Request, NativeId>,\n) =>\n makeSqliteIdentityServices(mapping, \"interactive\").pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nexport const makeSubjectProvisioningServices = <\n Subject extends AnySQLiteTable,\n Identifier extends AnySQLiteTable,\n Request extends AnySQLiteTable,\n NativeId,\n>(\n mapping: SubjectProvisioningTables<Subject, Identifier, Request, NativeId>,\n) =>\n makeSqliteSubjectProvisioningServices(mapping, \"interactive\").pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nexport const makeExternalIdentityServices = <\n Subject extends AnySQLiteTable,\n External extends AnySQLiteTable,\n NativeId,\n>(\n mapping: ExternalIdentityTables<Subject, External, NativeId>,\n) =>\n makeSqliteExternalIdentityServices(mapping).pipe(\n Effect.provideServiceEffect(NativeDatabase, nativeDatabase(Database)),\n );\n\nimport { makeSqlitePasswordPreparedTarget } from \"./drizzle/sqlite-password-prepared\";\n\nconst passwordPreparedTarget = makeSqlitePasswordPreparedTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>\n>(Database, (service) =>\n sqlitePasswordConfiguration(\n \"interactive\",\n sqlClientPasswordStandaloneGuard(service),\n sqlClientProofStandaloneGuard(service),\n ),\n);\n\nexport const { makePasswordPreparedPersistenceServices, coordinatePasswordPreparedPersistence } =\n passwordPreparedTarget;\n\nexport { passwordPreparedPersistenceLayer } from \"./drizzle/password-prepared-target\";\n\nimport { makeOAuthTarget } from \"./drizzle/oauth-drivers\";\nimport { sqlClientOAuthStandaloneGuard } from \"./drizzle/oauth-target\";\n\nconst oauthTarget = makeOAuthTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientOAuthStandaloneGuard,\n});\n\nexport const {\n makeOAuthAccountsServices,\n makeOAuthSignInServices,\n makeOAuthRegistrationIntentServices,\n makeOAuthRegistrationServices,\n coordinateOAuthRegistration,\n coordinateOAuthSignIn,\n coordinateOAuthRegistrationIntents,\n coordinateOAuthAccounts,\n makeOAuthConnectedServices,\n makeOAuthConnectedRevocationServices,\n coordinateOAuthConnected,\n coordinateOAuthConnectedRevocations,\n} = oauthTarget;\n\nimport { makePasskeyTarget } from \"./drizzle/passkey-drivers\";\nimport { sqlClientPasskeyStandaloneGuard } from \"./drizzle/passkey-target\";\n\nconst passkeyTarget = makePasskeyTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientPasskeyStandaloneGuard,\n});\n\nexport const {\n makePasskeyCredentialServices,\n makePasskeyPersistenceServices,\n makePasskeyEnrollmentContextServices,\n makePasskeyRegistrationCeremonyServices,\n coordinatePasskeyPersistence,\n coordinatePasskeyRegistrationCeremony,\n makePasskeyManagementServices,\n makePasskeyRegistrationServices,\n coordinatePasskeyManagement,\n coordinatePasskeyRegistration,\n} = passkeyTarget;\n\nimport { makeTotpTarget, sqlClientTotpStandaloneGuard } from \"./drizzle/totp-target\";\n\nconst totpTarget = makeTotpTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientTotpStandaloneGuard,\n});\n\nexport const { makeTotpPersistenceServices, coordinateTotpPersistence } = totpTarget;\n\nimport { makePhoneTarget, sqlClientPhoneStandaloneGuard } from \"./drizzle/phone-target\";\n\nconst phoneTarget = makePhoneTarget<\n Database,\n EffectSQLiteBunDatabase<AnyRelations>,\n AnySQLiteTable<{ dialect: \"sqlite\" }>\n>(Database, {\n mode: \"interactive\",\n dialect: \"sqlite\",\n locking: false,\n standaloneGuard: sqlClientPhoneStandaloneGuard,\n});\n\nexport const { makePhonePersistenceServices, coordinatePhonePersistence } = phoneTarget;\n\nimport { drizzleMigrationsLayer } from \"./internal/drizzle-migrations\";\nimport { sqlitePersistence } from \"./internal/drizzle-sqlite\";\n\nexport const AuthPersistence = {\n ...sqlitePersistence(makeWithDefaults({})),\n migrationsLayer: drizzleMigrationsLayer(\n makeWithDefaults({}),\n Effect.promise(() => import(\"drizzle-orm/effect-sqlite-bun/migrator\")).pipe(\n Effect.map((module) => module.migrate),\n ),\n ),\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAa,WAAb,cAA8B,QAAQ,QAAyD,CAAC,CAC9F,oDACF,CAAC,CAAC,CAAC;;AAGH,MAAa,gBAAgB,MAAM,OAAO,UAAU,iBAAiB,CAAC,CAAC,CAAC;AAqBxE,MAAM,gBAAgB,wBACpB,WACC,YAAY,2BAA2B,eAAe,gCAAgC,OAAO,CAAC,CACjG;AAEA,MAAM,cAAc,sBAClB,WACC,YAAY,yBAAyB,eAAe,8BAA8B,OAAO,CAAC,CAC7F;AAEA,MAAM,iBAAiB,yBACrB,WACC,YACC,4BACE,eACA,iCAAiC,OAAO,GACxC,8BAA8B,OAAO,CACvC,CACJ;AAYA,MAAa,EACX,wBACA,6BACA,0BACA,+BACA,4BAfkB,sBAClB,WACC,YACC,yBACE,eACA,8BAA8B,OAAO,GACrC,8BAA8B,OAAO,CACvC,CASA;AAEJ,MAAa,EACX,+BACA,gCACA,iCACA,qCACE;AAEJ,MAAa,EAAE,4BAA4B,iCAAiC;AAE5E,MAAa,EACX,mCACA,iCACA,iCACA,4BACA,qCACA,mCACA,2BACA,yBACA,mCACA,gCACE;AAEJ,MAAa,aAAa;AAE1B,MAAa,wBAOX,YAEA,2BAA2B,SAAS,aAAa,CAAC,CAAC,KACjD,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAEF,MAAa,mCAMX,YAEA,sCAAsC,SAAS,aAAa,CAAC,CAAC,KAC5D,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAEF,MAAa,gCAKX,YAEA,mCAAmC,OAAO,CAAC,CAAC,KAC1C,OAAO,qBAAqB,gBAAgB,eAAe,QAAQ,CAAC,CACtE;AAeF,MAAa,EAAE,yCAAyC,0CAXzB,iCAG7B,WAAW,YACX,4BACE,eACA,iCAAiC,OAAO,GACxC,8BAA8B,OAAO,CACvC,CAIA;AAkBF,MAAa,EACX,2BACA,yBACA,qCACA,+BACA,6BACA,uBACA,oCACA,yBACA,4BACA,sCACA,0BACA,wCAvBkB,gBAIlB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAeI;AAgBJ,MAAa,EACX,+BACA,gCACA,sCACA,yCACA,8BACA,uCACA,+BACA,iCACA,6BACA,kCArBoB,kBAIpB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAaI;AAeJ,MAAa,EAAE,6BAA6B,8BAXzB,eAIjB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAE0E;AAe1E,MAAa,EAAE,8BAA8B,+BAXzB,gBAIlB,UAAU;CACV,MAAM;CACN,SAAS;CACT,SAAS;CACT,iBAAiB;AACnB,CAE4E;AAK5E,MAAa,kBAAkB;CAC7B,GAAG,kBAAkB,iBAAiB,CAAC,CAAC,CAAC;CACzC,iBAAiB,uBACf,iBAAiB,CAAC,CAAC,GACnB,OAAO,cAAc,OAAO,yCAAyC,CAAC,CAAC,KACrE,OAAO,KAAK,WAAW,OAAO,OAAO,CACvC,CACF;AACF"}