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

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 (383) hide show
  1. package/README.md +4 -2
  2. package/dist/D1.d.mts +495 -1151
  3. package/dist/D1.mjs +41 -19
  4. package/dist/D1.mjs.map +1 -1
  5. package/dist/Libsql.d.mts +385 -1996
  6. package/dist/Libsql.mjs +43 -47
  7. package/dist/Libsql.mjs.map +1 -1
  8. package/dist/Mysql2.d.mts +397 -1743
  9. package/dist/Mysql2.mjs +35 -41
  10. package/dist/Mysql2.mjs.map +1 -1
  11. package/dist/Pglite.d.mts +397 -1743
  12. package/dist/Pglite.mjs +42 -31
  13. package/dist/Pglite.mjs.map +1 -1
  14. package/dist/Postgres.d.mts +397 -1743
  15. package/dist/Postgres.mjs +42 -31
  16. package/dist/Postgres.mjs.map +1 -1
  17. package/dist/SqliteBun.d.mts +385 -1992
  18. package/dist/SqliteBun.mjs +43 -43
  19. package/dist/SqliteBun.mjs.map +1 -1
  20. package/dist/SqliteDo.d.mts +385 -1991
  21. package/dist/SqliteDo.mjs +42 -41
  22. package/dist/SqliteDo.mjs.map +1 -1
  23. package/dist/SqliteNode.d.mts +385 -1992
  24. package/dist/SqliteNode.mjs +43 -43
  25. package/dist/SqliteNode.mjs.map +1 -1
  26. package/dist/SqliteWasm.d.mts +385 -1992
  27. package/dist/SqliteWasm.mjs +43 -43
  28. package/dist/SqliteWasm.mjs.map +1 -1
  29. package/dist/drizzle/d1-identity.mjs +2 -2
  30. package/dist/drizzle/d1-identity.mjs.map +1 -1
  31. package/dist/drizzle/driver-types.d.mts +15 -0
  32. package/dist/drizzle/email-drivers.mjs +32 -0
  33. package/dist/drizzle/email-drivers.mjs.map +1 -0
  34. package/dist/drizzle/email-model.d.mts +9 -13
  35. package/dist/drizzle/email-target.d.mts +10 -11
  36. package/dist/drizzle/email-target.mjs +33 -70
  37. package/dist/drizzle/email-target.mjs.map +1 -1
  38. package/dist/drizzle/model.d.mts +1 -10
  39. package/dist/drizzle/model.mjs +1 -2
  40. package/dist/drizzle/model.mjs.map +1 -1
  41. package/dist/drizzle/mysql-identity.mjs +3 -6
  42. package/dist/drizzle/mysql-identity.mjs.map +1 -1
  43. package/dist/drizzle/native-clock.d.mts +9 -0
  44. package/dist/drizzle/native-clock.mjs +18 -0
  45. package/dist/drizzle/native-clock.mjs.map +1 -0
  46. package/dist/drizzle/native-database.d.mts +46 -0
  47. package/dist/drizzle/native-database.mjs +6 -5
  48. package/dist/drizzle/native-database.mjs.map +1 -1
  49. package/dist/drizzle/native-sql-table.mjs +13 -5
  50. package/dist/drizzle/native-sql-table.mjs.map +1 -1
  51. package/dist/drizzle/native-target.d.mts +6 -0
  52. package/dist/drizzle/native-target.mjs +44 -0
  53. package/dist/drizzle/native-target.mjs.map +1 -0
  54. package/dist/drizzle/oauth-connected-drivers.mjs +4 -56
  55. package/dist/drizzle/oauth-connected-drivers.mjs.map +1 -1
  56. package/dist/drizzle/oauth-connected-model.d.mts +5 -22
  57. package/dist/drizzle/oauth-connected-model.mjs +1 -7
  58. package/dist/drizzle/oauth-connected-reference.d.mts +5 -7
  59. package/dist/drizzle/oauth-connected-reference.mjs +11 -3
  60. package/dist/drizzle/oauth-connected-reference.mjs.map +1 -1
  61. package/dist/drizzle/oauth-drivers.mjs +1 -2
  62. package/dist/drizzle/oauth-drivers.mjs.map +1 -1
  63. package/dist/drizzle/oauth-model.d.mts +11 -37
  64. package/dist/drizzle/oauth-model.mjs +3 -4
  65. package/dist/drizzle/oauth-model.mjs.map +1 -1
  66. package/dist/drizzle/oauth-proxy.d.mts +1 -1
  67. package/dist/drizzle/oauth-proxy.mjs +1 -1
  68. package/dist/drizzle/oauth-target.d.mts +9 -6
  69. package/dist/drizzle/oauth-target.mjs +47 -15
  70. package/dist/drizzle/oauth-target.mjs.map +1 -1
  71. package/dist/drizzle/passkey/target.d.mts +14 -0
  72. package/dist/drizzle/passkey/target.mjs +52 -0
  73. package/dist/drizzle/passkey/target.mjs.map +1 -0
  74. package/dist/drizzle/passkey/write-target.d.mts +11 -0
  75. package/dist/drizzle/passkey/write-target.mjs +28 -0
  76. package/dist/drizzle/passkey/write-target.mjs.map +1 -0
  77. package/dist/drizzle/passkey-drivers.mjs +2 -4
  78. package/dist/drizzle/passkey-drivers.mjs.map +1 -1
  79. package/dist/drizzle/passkey-model.d.mts +5 -26
  80. package/dist/drizzle/passkey-model.mjs +2 -8
  81. package/dist/drizzle/passkey-registration-ceremony-model.d.mts +3 -6
  82. package/dist/drizzle/passkey-write-drivers.mjs +2 -3
  83. package/dist/drizzle/passkey-write-drivers.mjs.map +1 -1
  84. package/dist/drizzle/passkey-write-model.d.mts +7 -9
  85. package/dist/drizzle/passkey-write-model.mjs +1 -3
  86. package/dist/drizzle/passkey-write-model.mjs.map +1 -1
  87. package/dist/drizzle/password-drivers.mjs +31 -0
  88. package/dist/drizzle/password-drivers.mjs.map +1 -0
  89. package/dist/drizzle/password-model.d.mts +7 -10
  90. package/dist/drizzle/password-target.d.mts +7 -8
  91. package/dist/drizzle/password-target.mjs +23 -68
  92. package/dist/drizzle/password-target.mjs.map +1 -1
  93. package/dist/drizzle/pg-identity.mjs +3 -6
  94. package/dist/drizzle/pg-identity.mjs.map +1 -1
  95. package/dist/drizzle/phone-drivers.mjs +24 -0
  96. package/dist/drizzle/phone-drivers.mjs.map +1 -0
  97. package/dist/drizzle/phone-model.d.mts +13 -104
  98. package/dist/drizzle/phone-model.mjs +5 -33
  99. package/dist/drizzle/phone-model.mjs.map +1 -1
  100. package/dist/drizzle/phone-target.mjs +22 -171
  101. package/dist/drizzle/phone-target.mjs.map +1 -1
  102. package/dist/drizzle/proof-drivers.mjs +24 -0
  103. package/dist/drizzle/proof-drivers.mjs.map +1 -0
  104. package/dist/drizzle/proof-model.d.mts +7 -15
  105. package/dist/drizzle/proof-target.d.mts +5 -5
  106. package/dist/drizzle/proof-target.mjs +14 -28
  107. package/dist/drizzle/proof-target.mjs.map +1 -1
  108. package/dist/drizzle/session-drivers.mjs +97 -0
  109. package/dist/drizzle/session-drivers.mjs.map +1 -0
  110. package/dist/drizzle/session-model.d.mts +11 -22
  111. package/dist/drizzle/sqlite-do-database.d.mts +3 -3
  112. package/dist/drizzle/sqlite-do-database.mjs +6 -1
  113. package/dist/drizzle/sqlite-do-database.mjs.map +1 -1
  114. package/dist/drizzle/sqlite-identity.mjs +3 -5
  115. package/dist/drizzle/sqlite-identity.mjs.map +1 -1
  116. package/dist/drizzle/step-up-model.d.mts +2 -5
  117. package/dist/drizzle/storage-validation.mjs +2 -1
  118. package/dist/drizzle/storage-validation.mjs.map +1 -1
  119. package/dist/drizzle/totp-model.d.mts +7 -74
  120. package/dist/drizzle/totp-model.mjs +1 -5
  121. package/dist/drizzle/totp-model.mjs.map +1 -1
  122. package/dist/drizzle/totp-target.mjs +39 -75
  123. package/dist/drizzle/totp-target.mjs.map +1 -1
  124. package/dist/drizzle/transaction-handle.mjs +13 -0
  125. package/dist/drizzle/transaction-handle.mjs.map +1 -0
  126. package/dist/drizzle/transaction-mysql.mjs +43 -12
  127. package/dist/drizzle/transaction-mysql.mjs.map +1 -1
  128. package/dist/index.d.mts +17 -22
  129. package/dist/index.mjs +10 -16
  130. package/dist/internal/drizzle-postgres.mjs +4 -6
  131. package/dist/internal/drizzle-postgres.mjs.map +1 -1
  132. package/dist/internal/drizzle-sqlite.mjs +4 -6
  133. package/dist/internal/drizzle-sqlite.mjs.map +1 -1
  134. package/package.json +1 -1
  135. package/src/D1.ts +77 -74
  136. package/src/Libsql.ts +65 -105
  137. package/src/Mysql2.ts +52 -87
  138. package/src/Pglite.ts +74 -81
  139. package/src/Postgres.ts +74 -81
  140. package/src/SqliteBun.ts +65 -113
  141. package/src/SqliteDo.ts +58 -106
  142. package/src/SqliteNode.ts +65 -113
  143. package/src/SqliteWasm.ts +65 -113
  144. package/src/drizzle/d1-identity.ts +2 -2
  145. package/src/drizzle/driver-types.ts +26 -0
  146. package/src/drizzle/email-drivers.ts +320 -0
  147. package/src/drizzle/email-model.ts +24 -78
  148. package/src/drizzle/email-target.ts +118 -211
  149. package/src/drizzle/model.ts +0 -2
  150. package/src/drizzle/mysql-identity.ts +4 -24
  151. package/src/drizzle/native-clock.ts +21 -0
  152. package/src/drizzle/native-database.ts +59 -18
  153. package/src/drizzle/native-sql-table.ts +104 -87
  154. package/src/drizzle/native-target.ts +120 -0
  155. package/src/drizzle/oauth-connected-drivers.ts +24 -233
  156. package/src/drizzle/oauth-connected-model.ts +3 -93
  157. package/src/drizzle/oauth-connected-reference.ts +16 -25
  158. package/src/drizzle/oauth-drivers.ts +58 -99
  159. package/src/drizzle/oauth-model.ts +27 -132
  160. package/src/drizzle/oauth-target.ts +250 -33
  161. package/src/drizzle/passkey/target.ts +205 -0
  162. package/src/drizzle/passkey/write-target.ts +91 -0
  163. package/src/drizzle/passkey-drivers.ts +35 -133
  164. package/src/drizzle/passkey-model.ts +3 -81
  165. package/src/drizzle/passkey-registration-ceremony-model.ts +5 -25
  166. package/src/drizzle/passkey-write-drivers.ts +32 -102
  167. package/src/drizzle/passkey-write-model.ts +10 -44
  168. package/src/drizzle/password-drivers.ts +286 -0
  169. package/src/drizzle/password-model.ts +10 -44
  170. package/src/drizzle/password-target.ts +85 -239
  171. package/src/drizzle/pg-identity.ts +4 -19
  172. package/src/drizzle/phone-drivers.ts +142 -0
  173. package/src/drizzle/phone-model.ts +22 -162
  174. package/src/drizzle/phone-target.ts +51 -493
  175. package/src/drizzle/proof-drivers.ts +123 -0
  176. package/src/drizzle/proof-model.ts +12 -123
  177. package/src/drizzle/proof-target.ts +38 -102
  178. package/src/drizzle/session-drivers.ts +696 -0
  179. package/src/drizzle/session-model.ts +54 -118
  180. package/src/drizzle/sqlite-do-database.ts +8 -0
  181. package/src/drizzle/sqlite-identity.ts +4 -22
  182. package/src/drizzle/step-up-model.ts +13 -37
  183. package/src/drizzle/storage-validation.ts +2 -1
  184. package/src/drizzle/totp-model.ts +20 -77
  185. package/src/drizzle/totp-target.ts +121 -261
  186. package/src/drizzle/transaction-handle.ts +41 -0
  187. package/src/drizzle/transaction-mysql.ts +91 -26
  188. package/src/index.ts +7 -122
  189. package/src/internal/drizzle-postgres.ts +4 -7
  190. package/src/internal/drizzle-sqlite.ts +4 -7
  191. package/dist/drizzle/crypto.mjs +0 -11
  192. package/dist/drizzle/crypto.mjs.map +0 -1
  193. package/dist/drizzle/d1-emails.d.mts +0 -62
  194. package/dist/drizzle/d1-emails.mjs +0 -626
  195. package/dist/drizzle/d1-emails.mjs.map +0 -1
  196. package/dist/drizzle/d1-generated-statement.mjs +0 -79
  197. package/dist/drizzle/d1-generated-statement.mjs.map +0 -1
  198. package/dist/drizzle/d1-oauth.d.mts +0 -331
  199. package/dist/drizzle/d1-oauth.mjs +0 -79
  200. package/dist/drizzle/d1-oauth.mjs.map +0 -1
  201. package/dist/drizzle/d1-passkey.d.mts +0 -37
  202. package/dist/drizzle/d1-passkey.mjs +0 -98
  203. package/dist/drizzle/d1-passkey.mjs.map +0 -1
  204. package/dist/drizzle/d1-password-prepared.d.mts +0 -25
  205. package/dist/drizzle/d1-password-prepared.mjs +0 -473
  206. package/dist/drizzle/d1-password-prepared.mjs.map +0 -1
  207. package/dist/drizzle/d1-passwords.d.mts +0 -70
  208. package/dist/drizzle/d1-passwords.mjs +0 -808
  209. package/dist/drizzle/d1-passwords.mjs.map +0 -1
  210. package/dist/drizzle/d1-phone.d.mts +0 -23
  211. package/dist/drizzle/d1-phone.mjs +0 -33
  212. package/dist/drizzle/d1-phone.mjs.map +0 -1
  213. package/dist/drizzle/d1-planning.d.mts +0 -11
  214. package/dist/drizzle/d1-planning.mjs +0 -43
  215. package/dist/drizzle/d1-planning.mjs.map +0 -1
  216. package/dist/drizzle/d1-proofs.d.mts +0 -80
  217. package/dist/drizzle/d1-proofs.mjs +0 -842
  218. package/dist/drizzle/d1-proofs.mjs.map +0 -1
  219. package/dist/drizzle/d1-sessions.d.mts +0 -68
  220. package/dist/drizzle/d1-sessions.mjs +0 -987
  221. package/dist/drizzle/d1-sessions.mjs.map +0 -1
  222. package/dist/drizzle/d1-totp.d.mts +0 -23
  223. package/dist/drizzle/d1-totp.mjs +0 -30
  224. package/dist/drizzle/d1-totp.mjs.map +0 -1
  225. package/dist/drizzle/email-registration.d.mts +0 -33
  226. package/dist/drizzle/email-registration.mjs +0 -281
  227. package/dist/drizzle/email-registration.mjs.map +0 -1
  228. package/dist/drizzle/email-sql.d.mts +0 -1
  229. package/dist/drizzle/email-sql.mjs +0 -9
  230. package/dist/drizzle/email-sql.mjs.map +0 -1
  231. package/dist/drizzle/mysql-emails.d.mts +0 -71
  232. package/dist/drizzle/mysql-emails.mjs +0 -43
  233. package/dist/drizzle/mysql-emails.mjs.map +0 -1
  234. package/dist/drizzle/mysql-password-prepared.d.mts +0 -30
  235. package/dist/drizzle/mysql-password-prepared.mjs +0 -21
  236. package/dist/drizzle/mysql-password-prepared.mjs.map +0 -1
  237. package/dist/drizzle/mysql-passwords.d.mts +0 -71
  238. package/dist/drizzle/mysql-passwords.mjs +0 -43
  239. package/dist/drizzle/mysql-passwords.mjs.map +0 -1
  240. package/dist/drizzle/mysql-proofs.d.mts +0 -75
  241. package/dist/drizzle/mysql-proofs.mjs +0 -28
  242. package/dist/drizzle/mysql-proofs.mjs.map +0 -1
  243. package/dist/drizzle/mysql-sessions.d.mts +0 -92
  244. package/dist/drizzle/mysql-sessions.mjs +0 -58
  245. package/dist/drizzle/mysql-sessions.mjs.map +0 -1
  246. package/dist/drizzle/oauth-connected-model.mjs.map +0 -1
  247. package/dist/drizzle/oauth-connected-target.d.mts +0 -6
  248. package/dist/drizzle/oauth-connected-target.mjs +0 -12
  249. package/dist/drizzle/oauth-connected-target.mjs.map +0 -1
  250. package/dist/drizzle/oauth-kernel.mjs +0 -11
  251. package/dist/drizzle/oauth-kernel.mjs.map +0 -1
  252. package/dist/drizzle/oauth-mysql.mjs +0 -8
  253. package/dist/drizzle/oauth-mysql.mjs.map +0 -1
  254. package/dist/drizzle/passkey-kernel.mjs +0 -8
  255. package/dist/drizzle/passkey-kernel.mjs.map +0 -1
  256. package/dist/drizzle/passkey-model.mjs.map +0 -1
  257. package/dist/drizzle/passkey-registration-ceremony-model.mjs +0 -2
  258. package/dist/drizzle/passkey-state.mjs +0 -7
  259. package/dist/drizzle/passkey-state.mjs.map +0 -1
  260. package/dist/drizzle/passkey-target.d.mts +0 -2
  261. package/dist/drizzle/passkey-target.mjs +0 -7
  262. package/dist/drizzle/passkey-target.mjs.map +0 -1
  263. package/dist/drizzle/passkey-write-target.d.mts +0 -5
  264. package/dist/drizzle/passkey-write-target.mjs +0 -7
  265. package/dist/drizzle/passkey-write-target.mjs.map +0 -1
  266. package/dist/drizzle/password-prepared-model.d.mts +0 -92
  267. package/dist/drizzle/password-prepared-model.mjs +0 -11
  268. package/dist/drizzle/password-prepared-model.mjs.map +0 -1
  269. package/dist/drizzle/password-prepared-sql.mjs +0 -395
  270. package/dist/drizzle/password-prepared-sql.mjs.map +0 -1
  271. package/dist/drizzle/password-prepared-state.mjs +0 -104
  272. package/dist/drizzle/password-prepared-state.mjs.map +0 -1
  273. package/dist/drizzle/password-prepared-target.d.mts +0 -13
  274. package/dist/drizzle/password-prepared-target.mjs +0 -62
  275. package/dist/drizzle/password-prepared-target.mjs.map +0 -1
  276. package/dist/drizzle/password-registration.d.mts +0 -7
  277. package/dist/drizzle/password-registration.mjs +0 -137
  278. package/dist/drizzle/password-registration.mjs.map +0 -1
  279. package/dist/drizzle/password-sql.d.mts +0 -1
  280. package/dist/drizzle/password-sql.mjs +0 -10
  281. package/dist/drizzle/password-sql.mjs.map +0 -1
  282. package/dist/drizzle/pg-emails.d.mts +0 -72
  283. package/dist/drizzle/pg-emails.mjs +0 -43
  284. package/dist/drizzle/pg-emails.mjs.map +0 -1
  285. package/dist/drizzle/pg-password-prepared.d.mts +0 -31
  286. package/dist/drizzle/pg-password-prepared.mjs +0 -21
  287. package/dist/drizzle/pg-password-prepared.mjs.map +0 -1
  288. package/dist/drizzle/pg-passwords.d.mts +0 -72
  289. package/dist/drizzle/pg-passwords.mjs +0 -43
  290. package/dist/drizzle/pg-passwords.mjs.map +0 -1
  291. package/dist/drizzle/pg-proofs.d.mts +0 -76
  292. package/dist/drizzle/pg-proofs.mjs +0 -27
  293. package/dist/drizzle/pg-proofs.mjs.map +0 -1
  294. package/dist/drizzle/pg-sessions.d.mts +0 -93
  295. package/dist/drizzle/pg-sessions.mjs +0 -58
  296. package/dist/drizzle/pg-sessions.mjs.map +0 -1
  297. package/dist/drizzle/phone-state.mjs +0 -14
  298. package/dist/drizzle/phone-state.mjs.map +0 -1
  299. package/dist/drizzle/phone-target.d.mts +0 -15
  300. package/dist/drizzle/proof-sql.d.mts +0 -1
  301. package/dist/drizzle/proof-sql.mjs +0 -8
  302. package/dist/drizzle/proof-sql.mjs.map +0 -1
  303. package/dist/drizzle/query-operations.mjs +0 -31
  304. package/dist/drizzle/query-operations.mjs.map +0 -1
  305. package/dist/drizzle/session-sql.d.mts +0 -1
  306. package/dist/drizzle/session-sql.mjs +0 -9
  307. package/dist/drizzle/session-sql.mjs.map +0 -1
  308. package/dist/drizzle/session-target.d.mts +0 -30
  309. package/dist/drizzle/session-target.mjs +0 -49
  310. package/dist/drizzle/session-target.mjs.map +0 -1
  311. package/dist/drizzle/sqlite-emails.mjs +0 -50
  312. package/dist/drizzle/sqlite-emails.mjs.map +0 -1
  313. package/dist/drizzle/sqlite-password-prepared.mjs +0 -26
  314. package/dist/drizzle/sqlite-password-prepared.mjs.map +0 -1
  315. package/dist/drizzle/sqlite-passwords.mjs +0 -54
  316. package/dist/drizzle/sqlite-passwords.mjs.map +0 -1
  317. package/dist/drizzle/sqlite-proofs.mjs +0 -34
  318. package/dist/drizzle/sqlite-proofs.mjs.map +0 -1
  319. package/dist/drizzle/sqlite-sessions.mjs +0 -79
  320. package/dist/drizzle/sqlite-sessions.mjs.map +0 -1
  321. package/dist/drizzle/standalone-guard.d.mts +0 -2
  322. package/dist/drizzle/standalone-guard.mjs +0 -21
  323. package/dist/drizzle/standalone-guard.mjs.map +0 -1
  324. package/dist/drizzle/totp-state.d.mts +0 -37
  325. package/dist/drizzle/totp-state.mjs +0 -287
  326. package/dist/drizzle/totp-state.mjs.map +0 -1
  327. package/dist/drizzle/totp-target.d.mts +0 -15
  328. package/dist/drizzle/transaction-execution.d.mts +0 -2
  329. package/dist/drizzle/transaction-execution.mjs +0 -11
  330. package/dist/drizzle/transaction-execution.mjs.map +0 -1
  331. package/dist/drizzle/transaction-owner.d.mts +0 -1
  332. package/dist/drizzle/transaction-owner.mjs +0 -8
  333. package/dist/drizzle/transaction-owner.mjs.map +0 -1
  334. package/src/drizzle/crypto.ts +0 -14
  335. package/src/drizzle/d1-emails.ts +0 -1945
  336. package/src/drizzle/d1-generated-statement.ts +0 -129
  337. package/src/drizzle/d1-oauth.ts +0 -360
  338. package/src/drizzle/d1-passkey.ts +0 -383
  339. package/src/drizzle/d1-password-prepared.ts +0 -1266
  340. package/src/drizzle/d1-passwords.ts +0 -2061
  341. package/src/drizzle/d1-phone.ts +0 -103
  342. package/src/drizzle/d1-planning.ts +0 -104
  343. package/src/drizzle/d1-proofs.ts +0 -2354
  344. package/src/drizzle/d1-sessions.ts +0 -2940
  345. package/src/drizzle/d1-totp.ts +0 -88
  346. package/src/drizzle/email-registration.ts +0 -850
  347. package/src/drizzle/email-sql.ts +0 -25
  348. package/src/drizzle/mysql-emails.ts +0 -343
  349. package/src/drizzle/mysql-password-prepared.ts +0 -198
  350. package/src/drizzle/mysql-passwords.ts +0 -343
  351. package/src/drizzle/mysql-proofs.ts +0 -196
  352. package/src/drizzle/mysql-sessions.ts +0 -780
  353. package/src/drizzle/oauth-connected-target.ts +0 -21
  354. package/src/drizzle/oauth-kernel.ts +0 -10
  355. package/src/drizzle/oauth-mysql.ts +0 -10
  356. package/src/drizzle/passkey-kernel.ts +0 -4
  357. package/src/drizzle/passkey-state.ts +0 -3
  358. package/src/drizzle/passkey-target.ts +0 -23
  359. package/src/drizzle/passkey-write-target.ts +0 -9
  360. package/src/drizzle/password-prepared-model.ts +0 -241
  361. package/src/drizzle/password-prepared-sql.ts +0 -1202
  362. package/src/drizzle/password-prepared-state.ts +0 -231
  363. package/src/drizzle/password-prepared-target.ts +0 -169
  364. package/src/drizzle/password-registration.ts +0 -369
  365. package/src/drizzle/password-sql.ts +0 -16
  366. package/src/drizzle/pg-emails.ts +0 -343
  367. package/src/drizzle/pg-password-prepared.ts +0 -199
  368. package/src/drizzle/pg-passwords.ts +0 -342
  369. package/src/drizzle/pg-proofs.ts +0 -206
  370. package/src/drizzle/pg-sessions.ts +0 -789
  371. package/src/drizzle/phone-state.ts +0 -21
  372. package/src/drizzle/proof-sql.ts +0 -10
  373. package/src/drizzle/query-operations.ts +0 -49
  374. package/src/drizzle/session-sql.ts +0 -15
  375. package/src/drizzle/session-target.ts +0 -337
  376. package/src/drizzle/sqlite-emails.ts +0 -393
  377. package/src/drizzle/sqlite-password-prepared.ts +0 -230
  378. package/src/drizzle/sqlite-passwords.ts +0 -497
  379. package/src/drizzle/sqlite-proofs.ts +0 -229
  380. package/src/drizzle/sqlite-sessions.ts +0 -1013
  381. package/src/drizzle/totp-state.ts +0 -525
  382. package/src/drizzle/transaction-execution.ts +0 -13
  383. package/src/drizzle/transaction-owner.ts +0 -11
@@ -1,26 +1,25 @@
1
- import { DrizzleTableModel } from "./drizzle/table-model.mjs";
2
1
  import { EmailAddressMapping, EmailRegistrationMapping, EmailSignInMapping } from "./drizzle/email-model.mjs";
3
- import { PasswordRegistrationMapping } from "./drizzle/password-model.mjs";
4
- import { ExternalIdentityTables, IdentityTables, SubjectProvisioningTables } from "./drizzle/model.mjs";
2
+ import { PasswordPersistenceMapping, PasswordRegistrationMapping } from "./drizzle/password-model.mjs";
5
3
  import { ProofPersistenceMapping } from "./drizzle/proof-model.mjs";
6
- import { PasswordPreparedPersistenceMapping, PasswordPreparedProofMapping } from "./drizzle/password-prepared-model.mjs";
7
- import { AuthenticationAuthorityMapping, PendingAuthenticationMapping, SignedSessionValidityMapping, StatefulSessionMapping } from "./drizzle/session-model.mjs";
8
- import { PasskeyCredentialMapping, PasskeyEnrollmentContextMapping, PasskeyPersistenceMapping } from "./drizzle/passkey-model.mjs";
4
+ import { ExternalIdentityTables, IdentityTables, SubjectProvisioningTables } from "./drizzle/model.mjs";
5
+ import { AuthenticationAuthorityMapping, PendingAuthenticationMapping, SessionCleanupMapping, SignedSessionValidityMapping, StatefulSessionMapping } from "./drizzle/session-model.mjs";
6
+ import { PasskeyCredentialMapping, PasskeyPersistenceMapping } from "./drizzle/passkey-model.mjs";
9
7
  import { SessionStepUpMapping } from "./drizzle/step-up-model.mjs";
10
8
  import { OAuthAccountsMapping, OAuthRegistrationIntentMapping, OAuthRegistrationMapping, OAuthSignInMapping } from "./drizzle/oauth-model.mjs";
11
9
  import { OAuthConnectedMapping, OAuthConnectedRevocationMapping } from "./drizzle/oauth-connected-model.mjs";
12
10
  import { PasskeyRegistrationCeremonyMapping } from "./drizzle/passkey-registration-ceremony-model.mjs";
13
- import { EmailRegistrationAuthority } from "./drizzle/email-registration.mjs";
14
- import { passwordPreparedPersistenceLayer } from "./drizzle/password-prepared-target.mjs";
15
- import { TotpMapping, TotpMappingSource, TotpPersistenceServices } from "./drizzle/totp-model.mjs";
11
+ import { NativeDatabase } from "./drizzle/native-database.mjs";
12
+ import { D1BatchStatements } from "./drizzle/D1BatchStatements.mjs";
13
+ import { OAuthCoordinatorError } from "./drizzle/oauth-target.mjs";
14
+ import { TotpMapping } from "./drizzle/totp-model.mjs";
16
15
  import { PasskeyManagementMapping, PasskeyRegistrationMapping } from "./drizzle/passkey-write-model.mjs";
17
- import { PhoneMapping, PhoneMappingSource, PhonePersistenceServices } from "./drizzle/phone-model.mjs";
16
+ import { PasskeyCoordinatorError } from "./drizzle/passkey/target.mjs";
17
+ import { PhoneMapping } from "./drizzle/phone-model.mjs";
18
18
  import "./index.mjs";
19
- import { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy.mjs";
19
+ import { NativeDriverTransaction } from "./drizzle/driver-types.mjs";
20
20
  import { SuppliedService } from "./drizzle/SuppliedService.mjs";
21
- import { TotpCoordinatorError } from "./drizzle/totp-target.mjs";
22
- import { PhoneCoordinatorError } from "./drizzle/phone-target.mjs";
23
- import { NativeDatabase } from "@yielded/auth-persistence/Adapter";
21
+ import { OAuthProxyPersistence } from "./internal/drizzle-sqlite-oauth-proxy.mjs";
22
+ import "./D1.mjs";
24
23
  import { Context, Effect, Layer } from "effect";
25
24
  import { AnySQLiteTable } from "drizzle-orm/sqlite-core";
26
25
  import { EffectSQLiteNodeDatabase } from "drizzle-orm/effect-sqlite-node";
@@ -30,251 +29,83 @@ declare const Database_base: Context.ServiceClass<Database, "effect-auth/persist
30
29
  export declare class Database extends Database_base {}
31
30
  /** Construct Drizzle from the driver's SQL-client Layer. */
32
31
  export declare const databaseLayer: Layer.Layer<Database, never, import("@effect/sql-sqlite-node/SqliteClient").SqliteClient>;
33
- export declare const coordinateEmailAddress: {
34
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
35
- readonly mapping: EmailAddressMapping<S, I, C, AC, M, NativeId>;
36
- readonly proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>;
32
+ export declare const makeEmailSignInServices: <S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N>(mapping: EmailSignInMapping<S, I, C, AC, N>) => Effect.Effect<{
33
+ readonly emailSignInTargets: import("@yielded/auth/Email").EmailSignInTargets["Service"];
34
+ }, import("@yielded/auth/Email").EmailUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeEmailAddressServices: <S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN>(mapping: EmailAddressMapping<S, I, C, AC, N>, proofMapping?: ProofPersistenceMapping<Proof, PS, PN> | undefined) => Effect.Effect<{
35
+ readonly emailAddressPersistence: import("@yielded/auth/Email").EmailAddressPersistence["Service"];
36
+ }, import("@yielded/auth/Email").EmailUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeEmailRegistrationServices: <Registration, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N>(mapping: EmailRegistrationMapping<Registration, S, I, C, AC, N>, proofs: ProofPersistenceMapping<Proof, PS, PN>) => Effect.Effect<{
37
+ readonly registrationAuthority: import("@yielded/auth-persistence/Adapter").EmailRegistrationAuthority<Registration>;
38
+ }, import("@yielded/auth/Email").EmailUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateEmailAddress: {
39
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
40
+ readonly mapping: EmailAddressMapping<S, I, C, AC, N>;
37
41
  readonly transaction?: never;
38
- }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Email").EmailUnavailable | import("@yielded/auth/Hooks").HookConfigurationError | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Email").EmailAddressPersistence>>;
39
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
40
- readonly mapping: EmailAddressMapping<S, I, C, AC, M, NativeId>;
41
- readonly proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>;
42
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
43
- }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Email").EmailUnavailable | import("@yielded/auth/Hooks").HookConfigurationError | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Email").EmailAddressPersistence>>;
42
+ } & {
43
+ readonly proofMapping?: ProofPersistenceMapping<Proof, PS, PN>;
44
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Email").EmailUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Email").EmailAddressPersistence>>;
45
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
46
+ readonly mapping: EmailAddressMapping<S, I, C, AC, N>;
47
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
48
+ } & {
49
+ readonly proofMapping?: ProofPersistenceMapping<Proof, PS, PN>;
50
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Email").EmailUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Email").EmailAddressPersistence>>;
44
51
  }, coordinateEmailRegistration: {
45
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
46
- readonly mapping: EmailRegistrationMapping<NoInfer<Registration>, S, I, C, AC, Rq, NativeId>;
47
- readonly proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>;
48
- readonly target: SuppliedService<TargetId, EmailRegistrationAuthority<Registration>>;
52
+ <TargetId, Registration, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
53
+ readonly mapping: EmailRegistrationMapping<NoInfer<Registration>, S, I, C, AC, N>;
54
+ readonly proofMapping: ProofPersistenceMapping<Proof, PS, PN>;
55
+ readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").EmailRegistrationAuthority<Registration>>;
49
56
  readonly transaction?: never;
50
- }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Email").EmailUnavailable | import("@yielded/auth/Hooks").HookConfigurationError | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
51
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
52
- readonly mapping: EmailRegistrationMapping<NoInfer<Registration>, S, I, C, AC, Rq, NativeId>;
53
- readonly proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>;
54
- readonly target: SuppliedService<TargetId, EmailRegistrationAuthority<Registration>>;
55
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
56
- }, body: Effect.Effect<Out, E, R>): Effect.Effect<Out, DatabaseError | E | import("@yielded/auth/Email").EmailUnavailable | import("@yielded/auth/Hooks").HookConfigurationError | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
57
- }, makeEmailAddressServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, M extends AnySQLiteTable, NativeId>(mapping: EmailAddressMapping<S, I, C, AC, M, NativeId>, proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>) => Effect.Effect<{
58
- emailAddressPersistence: {
59
- readonly target: (input: {
60
- readonly moduleId: string;
61
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
62
- readonly target: import("@yielded/auth/Identity").LoginIdentifier;
63
- readonly sourceCredentialId?: string;
64
- }) => Effect.Effect<import("@yielded/auth/Email").EmailAddressTarget, import("@yielded/auth/Email").EmailUnavailable>;
65
- readonly checkCompletion: (input: import("@yielded/auth/Proofs").ProofCompletionInput) => Effect.Effect<boolean, import("@yielded/auth/Email").EmailUnavailable>;
66
- readonly verifyWithProof: <A>(input: import("@yielded/auth/Email").EmailAddressMutation, prepare: import("@yielded/auth/Email").PrepareEmailCommit<import("@yielded/auth/Email").EmailAddressDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Email").EmailUnavailable>;
67
- readonly changeWithProof: <A>(input: import("@yielded/auth/Email").EmailAddressMutation, prepare: import("@yielded/auth/Email").PrepareEmailCommit<import("@yielded/auth/Email").EmailAddressDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Email").EmailUnavailable>;
68
- readonly cleanup: <A>(input: {
69
- readonly moduleId: string;
70
- readonly limit: number;
71
- }, prepare: import("@yielded/auth/Email").PrepareEmailCommit<{
72
- readonly removed: number;
73
- readonly hasMore: boolean;
74
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Email").EmailUnavailable>;
75
- };
76
- }, import("@yielded/auth/Email").EmailUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeEmailRegistrationServices: <Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId>(mapping: EmailRegistrationMapping<Registration, S, I, C, AC, Rq, NativeId>, proofMapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, DrizzleTableModel<any>, any, import("drizzle-orm").SQL<unknown>>) => Effect.Effect<{
77
- registrationAuthority: EmailRegistrationAuthority<Registration>;
78
- }, import("@yielded/auth/Email").EmailUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeEmailSignInServices: <S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, NativeId>(mapping: EmailSignInMapping<S, I, C, NativeId>) => Effect.Effect<{
79
- emailSignInTargets: {
80
- readonly lookup: (input: {
81
- readonly moduleId: string;
82
- readonly identifier: import("@yielded/auth/Identity").LoginIdentifier;
83
- }) => Effect.Effect<import("effect/Option").Option<import("@yielded/auth/Email").EmailCredentialSnapshot>, import("@yielded/auth/Email").EmailUnavailable>;
84
- };
85
- }, import("@yielded/auth/Email").EmailUnavailable, Database>;
57
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Email").EmailUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
58
+ <TargetId, Registration, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
59
+ readonly mapping: EmailRegistrationMapping<NoInfer<Registration>, S, I, C, AC, N>;
60
+ readonly proofMapping: ProofPersistenceMapping<Proof, PS, PN>;
61
+ readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").EmailRegistrationAuthority<Registration>>;
62
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
63
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Email").EmailUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
64
+ };
86
65
  export declare const coordinatePasswordPersistence: {
87
- <Database extends EffectSQLiteNodeDatabase<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
- readonly proofMapping?: PM;
66
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
67
+ readonly mapping: PasswordPersistenceMapping<S, I, C, AC, N>;
90
68
  readonly transaction?: never;
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 EffectSQLiteNodeDatabase<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
- readonly proofMapping?: PM;
95
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
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>>;
69
+ } & {
70
+ readonly proofMapping?: ProofPersistenceMapping<Proof, PS, PN>;
71
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Password").PasswordUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Password").PasswordPersistence>>;
72
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
73
+ readonly mapping: PasswordPersistenceMapping<S, I, C, AC, N>;
74
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
75
+ } & {
76
+ readonly proofMapping?: ProofPersistenceMapping<Proof, PS, PN>;
77
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Password").PasswordUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Password").PasswordPersistence>>;
97
78
  }, coordinatePasswordRegistration: {
98
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
99
- readonly mapping: PasswordRegistrationMapping<NoInfer<Registration>, S, I, C, AC, Rq, NativeId>;
79
+ <TargetId, Registration, Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
80
+ readonly mapping: PasswordRegistrationMapping<NoInfer<Registration>, S, I, C, AC, N>;
100
81
  readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>>;
101
82
  readonly transaction?: never;
102
- }, 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>>;
103
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable, I extends AnySQLiteTable, C extends AnySQLiteTable, AC extends AnySQLiteTable, Rq extends AnySQLiteTable, NativeId, Out, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
104
- readonly mapping: PasswordRegistrationMapping<NoInfer<Registration>, S, I, C, AC, Rq, NativeId>;
83
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Password").PasswordUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId>>;
84
+ <TargetId, Registration, Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
85
+ readonly mapping: PasswordRegistrationMapping<NoInfer<Registration>, S, I, C, AC, N>;
105
86
  readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>>;
106
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
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, 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
- passwordPersistence: {
110
- readonly findCredential: (input: {
111
- readonly moduleId: string;
112
- readonly identifier: import("@yielded/auth/Identity").LoginIdentifier;
113
- readonly subjectId?: import("@yielded/auth/Schema").SubjectId;
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>;
119
- readonly readForSubject: (input: {
120
- readonly moduleId: string;
121
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
122
- }) => Effect.Effect<import("effect/Option").Option<import("@yielded/auth/Password").PasswordCredentialSnapshot>, import("@yielded/auth/Password").PasswordUnavailable>;
123
- readonly recoveryTarget: (input: {
124
- readonly moduleId: string;
125
- readonly identifier: import("@yielded/auth/Identity").LoginIdentifier;
126
- }) => Effect.Effect<import("effect/Option").Option<import("@yielded/auth/Password").PasswordCredentialSnapshot>, 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>;
129
- readonly checkReset: (input: import("@yielded/auth/Proofs").ProofCompletionInput) => Effect.Effect<boolean, import("@yielded/auth/Password").PasswordUnavailable>;
130
- readonly resetWithProof: <A>(input: import("@yielded/auth/Password").PasswordMutationInput & {
131
- readonly completion: import("@yielded/auth/Proofs").ProofCompletionPlan;
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>;
133
- };
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<{
135
- registrationAuthority: import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>;
136
- }, import("@yielded/auth/Password").PasswordUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>;
87
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
88
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Password").PasswordUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TargetId | TxId>>;
89
+ }, makePasswordPersistenceServices: <S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N, Proof extends import("drizzle-orm").Table, PS extends import("drizzle-orm").Table, PN>(mapping: PasswordPersistenceMapping<S, I, C, AC, N>, proofMapping?: ProofPersistenceMapping<Proof, PS, PN> | undefined) => Effect.Effect<{
90
+ readonly passwordPersistence: import("@yielded/auth/Password").PasswordPersistence["Service"];
91
+ }, import("@yielded/auth/Password").PasswordUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makePasswordRegistrationServices: <Registration, S extends import("drizzle-orm").Table, I extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, AC extends import("drizzle-orm").Table, N>(mapping: PasswordRegistrationMapping<Registration, S, I, C, AC, N>) => Effect.Effect<{
92
+ readonly registrationAuthority: import("@yielded/auth-persistence/Adapter").PasswordRegistrationAuthority<Registration>;
93
+ }, import("@yielded/auth/Password").PasswordUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>;
137
94
  export declare const coordinateProofPersistence: {
138
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Rq extends AnySQLiteTable, S extends AnySQLiteTable, G extends AnySQLiteTable, Cn extends AnySQLiteTable, Rs extends AnySQLiteTable, Aev extends AnySQLiteTable, F extends AnySQLiteTable, C extends AnySQLiteTable, Sub extends AnySQLiteTable, I extends AnySQLiteTable, Cr extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
139
- readonly mapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<Rq>, DrizzleTableModel<S>, DrizzleTableModel<G>, DrizzleTableModel<Cn>, DrizzleTableModel<Rs>, DrizzleTableModel<Aev>, DrizzleTableModel<F>, DrizzleTableModel<C>, DrizzleTableModel<Sub>, DrizzleTableModel<I>, DrizzleTableModel<Cr>, NativeId, import("drizzle-orm").SQL<unknown>>;
140
- readonly transaction?: never;
141
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Proofs").ProofUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Proofs").ProofPersistence>>;
142
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Rq extends AnySQLiteTable, S extends AnySQLiteTable, G extends AnySQLiteTable, Cn extends AnySQLiteTable, Rs extends AnySQLiteTable, Aev extends AnySQLiteTable, F extends AnySQLiteTable, C extends AnySQLiteTable, Sub extends AnySQLiteTable, I extends AnySQLiteTable, Cr extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
143
- readonly mapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<Rq>, DrizzleTableModel<S>, DrizzleTableModel<G>, DrizzleTableModel<Cn>, DrizzleTableModel<Rs>, DrizzleTableModel<Aev>, DrizzleTableModel<F>, DrizzleTableModel<C>, DrizzleTableModel<Sub>, DrizzleTableModel<I>, DrizzleTableModel<Cr>, NativeId, import("drizzle-orm").SQL<unknown>>;
144
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
145
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | E | import("@yielded/auth/Hooks").HookConfigurationError | import("@yielded/auth/Proofs").ProofUnavailable | import("effect/sql/SqlError").SqlError, DatabaseRequirements | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Proofs").ProofPersistence>>;
146
- }, makeProofPersistenceServices: <Rq extends AnySQLiteTable, S extends AnySQLiteTable, G extends AnySQLiteTable, Cn extends AnySQLiteTable, Rs extends AnySQLiteTable, A extends AnySQLiteTable, F extends AnySQLiteTable, C extends AnySQLiteTable, Sub extends AnySQLiteTable, I extends AnySQLiteTable, Cr extends AnySQLiteTable, NativeId>(mapping: import("@yielded/auth-persistence/Adapter").ProofPersistenceMapping<DrizzleTableModel<Rq>, DrizzleTableModel<S>, DrizzleTableModel<G>, DrizzleTableModel<Cn>, DrizzleTableModel<Rs>, DrizzleTableModel<A>, DrizzleTableModel<F>, DrizzleTableModel<C>, DrizzleTableModel<Sub>, DrizzleTableModel<I>, DrizzleTableModel<Cr>, NativeId, import("drizzle-orm").SQL<unknown>>) => Effect.Effect<{
147
- proofPersistence: {
148
- readonly issue: <A_1>(input: {
149
- readonly record: import("@yielded/auth/Proofs").ProofRecord;
150
- readonly policy: import("@yielded/auth/Proofs").ProofPolicy;
151
- readonly eligible: boolean;
152
- readonly supersedes?: import("@yielded/auth/Proofs").ProofId;
153
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<import("@yielded/auth/Proofs").ProofIssueDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofRequestConflict | import("@yielded/auth/Proofs").ProofUnavailable>;
154
- readonly attempt: <A_1>(input: {
155
- readonly moduleId: string;
156
- readonly purpose: import("@yielded/auth/Proofs").ProofPurpose;
157
- readonly proofId: import("@yielded/auth/Proofs").ProofId;
158
- readonly binding: import("@yielded/auth/Proofs").ProofBinding;
159
- readonly candidate?: import("@yielded/auth/Proofs").ProofDigest;
160
- readonly continuationId: import("@yielded/auth/Proofs").ProofContinuationId;
161
- readonly continuationDigest: import("@yielded/auth/Schema").TokenDigest;
162
- readonly nowMillis: number;
163
- readonly policy: import("@yielded/auth/Proofs").ProofPolicy;
164
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<import("@yielded/auth/Proofs").ProofAttemptDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
165
- readonly complete: <A_1>(input: import("@yielded/auth/Proofs").ProofCompletionInput, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<import("@yielded/auth/Proofs").ProofCompletionDecision, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
166
- readonly claimDelivery: <A_1>(input: {
167
- readonly moduleId: string;
168
- readonly proofId: import("@yielded/auth/Proofs").ProofId;
169
- readonly version: import("@yielded/auth/Proofs").ProofVersion;
170
- readonly deliveryId: import("@yielded/auth/Proofs").ProofDeliveryId;
171
- readonly nowMillis: number;
172
- readonly policy: import("@yielded/auth/Proofs").ProofPolicy;
173
- readonly allowAmbiguousRetry: boolean;
174
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<import("@yielded/auth/Proofs").ProofDeliveryClaim, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
175
- readonly settleDelivery: <A_1>(input: {
176
- readonly moduleId: string;
177
- readonly proofId: import("@yielded/auth/Proofs").ProofId;
178
- readonly version: import("@yielded/auth/Proofs").ProofVersion;
179
- readonly deliveryId: import("@yielded/auth/Proofs").ProofDeliveryId;
180
- readonly claimVersion: import("@yielded/auth/Proofs").ProofVersion;
181
- readonly outcome: import("@yielded/auth/Proofs").ProofDeliveryOutcome;
182
- readonly nowMillis: number;
183
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<void, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
184
- readonly cancel: <A_1>(input: {
185
- readonly moduleId: string;
186
- readonly purpose: import("@yielded/auth/Proofs").ProofPurpose;
187
- readonly binding: import("@yielded/auth/Proofs").ProofBinding;
188
- readonly nowMillis: number;
189
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<void, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
190
- readonly cleanup: <A_1>(input: {
191
- readonly moduleId: string;
192
- readonly nowMillis: number;
193
- readonly limit: number;
194
- }, prepare: import("@yielded/auth/Proofs").PrepareProofCommit<import("@yielded/auth/Proofs").ProofCleanupResult, A_1>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A_1>, import("@yielded/auth/Proofs").ProofUnavailable>;
195
- };
196
- }, import("@yielded/auth/Proofs").ProofUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>;
197
- export declare const coordinateAuthenticationAuthority: {
198
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
199
- readonly mapping: AuthenticationAuthorityMapping<Claims, S, C, F, P, NativeId>;
200
- readonly transaction?: never;
201
- }, 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, import("@yielded/auth/Sessions").AuthenticationAuthority>>;
202
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
203
- readonly mapping: AuthenticationAuthorityMapping<Claims, S, C, F, P, NativeId>;
204
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
205
- }, 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, TxId | import("@yielded/auth/Sessions").AuthenticationAuthority>>;
206
- }, coordinatePendingAuthentication: {
207
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, P extends AnySQLiteTable, F extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
208
- readonly mapping: PendingAuthenticationMapping<NoInfer<Claims>, S, C, P, F, NativeId>;
209
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Sessions").PendingAuthentication<Claims>>;
210
- readonly transaction?: never;
211
- }, 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, TargetId>>;
212
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, P extends AnySQLiteTable, F extends AnySQLiteTable, NativeId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
213
- readonly mapping: PendingAuthenticationMapping<NoInfer<Claims>, S, C, P, F, NativeId>;
214
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Sessions").PendingAuthentication<Claims>>;
215
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
216
- }, 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, TargetId | TxId>>;
217
- }, coordinateSignedSessionValidity: {
218
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
219
- readonly mapping: SignedSessionValidityMapping<S, T, NativeId, NativeSessionId>;
220
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Sessions").SignedSessionValidity>;
221
- readonly transaction?: never;
222
- }, 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, TargetId>>;
223
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, S extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
224
- readonly mapping: SignedSessionValidityMapping<S, T, NativeId, NativeSessionId>;
225
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Sessions").SignedSessionValidity>;
226
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
227
- }, 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, TargetId | TxId>>;
228
- }, coordinateStatefulSessions: {
229
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, PersistenceId, RepositoryId, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, Session extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
230
- readonly mapping: StatefulSessionMapping<NoInfer<Claims>, S, C, Session, F, P, NativeId, NativeSessionId>;
231
- readonly persistence: SuppliedService<PersistenceId, import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>>;
232
- readonly repository: SuppliedService<RepositoryId, import("@yielded/auth/Sessions").SessionRepository>;
233
- readonly transaction?: never;
234
- }, 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>>;
235
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, PersistenceId, RepositoryId, Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, Session extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
236
- readonly mapping: StatefulSessionMapping<NoInfer<Claims>, S, C, Session, F, P, NativeId, NativeSessionId>;
237
- readonly persistence: SuppliedService<PersistenceId, import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>>;
238
- readonly repository: SuppliedService<RepositoryId, import("@yielded/auth/Sessions").SessionRepository>;
239
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
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>>;
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<{
242
- authenticationAuthority: {
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>;
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>;
245
- readonly approve: <A>(input: {
246
- readonly evidence: import("@yielded/auth/Sessions").AuthenticationEvidence;
247
- readonly now: import("effect/DateTime").Utc;
248
- readonly expiresAt: import("effect/DateTime").Utc;
249
- readonly absoluteExpiresAt: import("effect/DateTime").Utc;
250
- readonly pending?: import("@yielded/auth/Sessions").PendingConsumption;
251
- }, prepare: import("@yielded/auth/Sessions").PrepareSessionCommit<void, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Sessions").StaleAuthentication | import("@yielded/auth/Sessions").PendingAuthenticationInvalid | import("@yielded/auth/Sessions").SessionUnavailable>;
252
- };
253
- }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makePendingAuthenticationServices: <Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, P extends AnySQLiteTable, F extends AnySQLiteTable, NativeId>(mapping: PendingAuthenticationMapping<Claims, S, C, P, F, NativeId>) => Effect.Effect<{
254
- pendingAuthentication: import("@yielded/auth/Sessions").PendingAuthentication<Claims>;
255
- }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeSessionStepUpServices: <Claims, Id, S extends AnySQLiteTable, C extends AnySQLiteTable, I extends AnySQLiteTable, Session extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId>(mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, I, Session, T, NativeId, NativeSessionId>, target: Context.Service<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>) => Effect.Effect<{
256
- sessionStepUpPersistence: import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>;
257
- }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateSessionStepUp: {
258
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, Id, S extends AnySQLiteTable, C extends AnySQLiteTable, I extends AnySQLiteTable, Session extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
259
- readonly mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, I, Session, T, NativeId, NativeSessionId>;
260
- readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>;
95
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Proof extends import("drizzle-orm").Table, Subject extends import("drizzle-orm").Table, NativeId, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
96
+ readonly mapping: ProofPersistenceMapping<Proof, Subject, NativeId>;
261
97
  readonly transaction?: never;
262
- }, 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, Id>>;
263
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, Id, S extends AnySQLiteTable, C extends AnySQLiteTable, I extends AnySQLiteTable, Session extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
264
- readonly mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, I, Session, T, NativeId, NativeSessionId>;
265
- readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>;
266
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
267
- }, 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, Id | TxId>>;
268
- }, makeSignedSessionValidityServices: <S extends AnySQLiteTable, T extends AnySQLiteTable, NativeId, NativeSessionId>(mapping: SignedSessionValidityMapping<S, T, NativeId, NativeSessionId>) => Effect.Effect<{
269
- signedSessionValidity: import("@yielded/auth/Sessions").SignedSessionValidity;
270
- }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeStatefulSessionServices: <Claims, S extends AnySQLiteTable, C extends AnySQLiteTable, Session extends AnySQLiteTable, F extends AnySQLiteTable, P extends AnySQLiteTable, NativeId, NativeSessionId>(mapping: StatefulSessionMapping<Claims, S, C, Session, F, P, NativeId, NativeSessionId>) => Effect.Effect<{
271
- readonly statefulSessionPersistence: import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>;
272
- readonly sessionRepository: import("@yielded/auth/Sessions").SessionRepository;
273
- }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>;
274
- export declare const commitMode: "interactive";
98
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Proofs").ProofUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Proofs").ProofPersistence>>;
99
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Proof extends import("drizzle-orm").Table, Subject extends import("drizzle-orm").Table, NativeId, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
100
+ readonly mapping: ProofPersistenceMapping<Proof, Subject, NativeId>;
101
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
102
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Proofs").ProofUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Proofs").ProofPersistence>>;
103
+ }, makeProofPersistenceServices: <Proof extends import("drizzle-orm").Table, Subject extends import("drizzle-orm").Table, NativeId>(mapping: ProofPersistenceMapping<Proof, Subject, NativeId>) => Effect.Effect<{
104
+ readonly proofPersistence: import("@yielded/auth/Proofs").ProofPersistence["Service"];
105
+ }, import("@yielded/auth/Proofs").ProofUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>;
275
106
  export declare const makeIdentityServices: <Subject extends AnySQLiteTable, Identifier extends AnySQLiteTable, External extends AnySQLiteTable, Request extends AnySQLiteTable, NativeId>(mapping: IdentityTables<Subject, Identifier, External, Request, NativeId>) => Effect.Effect<{
276
107
  subjectProvisioner: {
277
- readonly provision: (input: import("@yielded/auth/Identity").SubjectProvisioningInput) => Effect.Effect<import("@yielded/auth/Identity").ProvisioningResult, import("@yielded/auth/Identity").IdentityConflict | import("@yielded/auth/Identity").IdentityUnavailable>;
108
+ readonly provision: (input: import("@yielded/auth/Identity").SubjectProvisioningInput) => Effect.Effect<import("@yielded/auth/Identity").SubjectProvisioned, import("@yielded/auth/Identity").IdentityConflict | import("@yielded/auth/Identity").IdentityUnavailable>;
278
109
  };
279
110
  externalIdentityMutation: {
280
111
  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>;
@@ -282,7 +113,7 @@ export declare const makeIdentityServices: <Subject extends AnySQLiteTable, Iden
282
113
  }, import("@yielded/auth/Identity").IdentityUnavailable, Database>;
283
114
  export declare const makeSubjectProvisioningServices: <Subject extends AnySQLiteTable, Identifier extends AnySQLiteTable, Request extends AnySQLiteTable, NativeId>(mapping: SubjectProvisioningTables<Subject, Identifier, Request, NativeId>) => Effect.Effect<{
284
115
  readonly subjectProvisioner: {
285
- readonly provision: (input: import("@yielded/auth/Identity").SubjectProvisioningInput) => Effect.Effect<import("@yielded/auth/Identity").ProvisioningResult, import("@yielded/auth/Identity").IdentityConflict | import("@yielded/auth/Identity").IdentityUnavailable>;
116
+ readonly provision: (input: import("@yielded/auth/Identity").SubjectProvisioningInput) => Effect.Effect<import("@yielded/auth/Identity").SubjectProvisioned, import("@yielded/auth/Identity").IdentityConflict | import("@yielded/auth/Identity").IdentityUnavailable>;
286
117
  };
287
118
  }, import("@yielded/auth/Identity").IdentityUnavailable, Database>;
288
119
  export declare const makeExternalIdentityServices: <Subject extends AnySQLiteTable, External extends AnySQLiteTable, NativeId>(mapping: ExternalIdentityTables<Subject, External, NativeId>) => Effect.Effect<{
@@ -290,22 +121,6 @@ export declare const makeExternalIdentityServices: <Subject extends AnySQLiteTab
290
121
  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>;
291
122
  };
292
123
  }, import("@yielded/auth/Identity").IdentityUnavailable, Database>;
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<{
294
- passwordPreparedPersistence: import("@yielded/auth/Password").PasswordPreparedPersistence;
295
- }, import("@yielded/auth/Password").PasswordUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinatePasswordPreparedPersistence: {
296
- <Database extends EffectSQLiteNodeDatabase<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>;
298
- readonly proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined;
299
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Password").PasswordPreparedPersistence>;
300
- readonly transaction?: never;
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>>;
302
- <Database extends EffectSQLiteNodeDatabase<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>;
304
- readonly proofMapping?: PasswordPreparedProofMapping<PS, PC, PM, PSub, PI, PCr, PNativeId> | undefined;
305
- readonly target: SuppliedService<TargetId, import("@yielded/auth/Password").PasswordPreparedPersistence>;
306
- readonly transaction: SuppliedService<TxId, NoInfer<Parameters<Parameters<Database["transaction"]>[0]>[0]>, TxShape>;
307
- }, 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>>;
308
- };
309
124
  export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
310
125
  dialect: "sqlite";
311
126
  }>, O extends AnySQLiteTable<{
@@ -316,260 +131,8 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
316
131
  dialect: "sqlite";
317
132
  }>, F extends AnySQLiteTable<{
318
133
  dialect: "sqlite";
319
- }>, TA extends AnySQLiteTable<{
320
- dialect: "sqlite";
321
- }>, U extends AnySQLiteTable<{
322
- dialect: "sqlite";
323
- }>, N>(mapping: OAuthAccountsMapping<S, O, C, AC, F, TA, U, N>) => Effect.Effect<{
324
- oauthAccountsPersistence: {
325
- readonly capture: (input: {
326
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
327
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
328
- }) => Effect.Effect<import("@yielded/auth/OAuth").OAuthAccountRevision | undefined, import("@yielded/auth/OAuth").OAuthUnavailable>;
329
- readonly issue: <A>(input: {
330
- readonly flow: import("@yielded/auth/OAuth").OAuthLinkPendingFlow;
331
- readonly authorization: import("@yielded/auth/OAuth").OAuthActionAuthorization;
332
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
333
- readonly _tag: "Rejected";
334
- } | {
335
- readonly _tag: "Issued";
336
- readonly flow: {
337
- readonly context: {
338
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
339
- readonly protocol: "oauth" | "oidc";
340
- readonly configurationGeneration: number;
341
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
342
- readonly responseIssuerMode: "required" | "unsupported";
343
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
344
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
345
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
346
- readonly generation: number;
347
- readonly flowId: string & import("effect/Brand").Brand<"effect-auth/RequestBindingFlowId">;
348
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
349
- readonly access?: {
350
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
351
- readonly generation: number;
352
- readonly issuance: "active" | "retired";
353
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
354
- readonly clientRegistrationId: string;
355
- readonly scopes: readonly string[];
356
- readonly resources: readonly string[];
357
- readonly retention: "access-and-refresh" | "access-only";
358
- readonly maximumAccessLifetimeMillis: number;
359
- readonly maximumRefreshLifetimeMillis?: number;
360
- readonly refreshAheadMillis: number;
361
- readonly refresh: "confidential" | "rotating" | "unsupported";
362
- readonly revocation: "cohort" | "unsupported";
363
- };
364
- readonly returnTarget: string & import("effect/Brand").Brand<"effect-auth/OAuthReturnTarget">;
365
- readonly stateDigest: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
366
- readonly requestBindingVerifier: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
367
- readonly requestBindingExpiresAtMillis: number;
368
- readonly issuedAtMillis: number;
369
- readonly expiresAtMillis: number;
370
- readonly claimLifetimeMillis: number;
371
- readonly namespace: "effect-auth/oauth-link-context/v1";
372
- readonly revision: {
373
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
374
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
375
- readonly credentials: readonly {
376
- readonly credentialId: string;
377
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
378
- }[];
379
- };
380
- readonly maximumEvidenceAgeMillis: number;
381
- };
382
- readonly sealed: {
383
- readonly format: "oauth-xchacha20poly1305-v1";
384
- readonly keyId: string;
385
- readonly nonce: string;
386
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
387
- };
388
- readonly retentionUntilMillis: number;
389
- };
390
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
391
- readonly preflight: (input: import("@yielded/auth/OAuth").OAuthLinkAccess) => Effect.Effect<import("@yielded/auth/OAuth").OAuthLinkPendingFlow | undefined, import("@yielded/auth/OAuth").OAuthUnavailable>;
392
- readonly claim: <A>(input: {
393
- readonly access: import("@yielded/auth/OAuth").OAuthLinkAccess;
394
- readonly flow: import("@yielded/auth/OAuth").OAuthLinkPendingFlow;
395
- readonly claimId: import("@yielded/auth/OAuth").OAuthLinkClaim["claimId"];
396
- readonly authorization: import("@yielded/auth/OAuth").OAuthActionAuthorization;
397
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
398
- readonly _tag: "Rejected";
399
- } | {
400
- readonly _tag: "Claimed";
401
- readonly claim: {
402
- readonly flow: {
403
- readonly context: {
404
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
405
- readonly protocol: "oauth" | "oidc";
406
- readonly configurationGeneration: number;
407
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
408
- readonly responseIssuerMode: "required" | "unsupported";
409
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
410
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
411
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
412
- readonly generation: number;
413
- readonly flowId: string & import("effect/Brand").Brand<"effect-auth/RequestBindingFlowId">;
414
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
415
- readonly access?: {
416
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
417
- readonly generation: number;
418
- readonly issuance: "active" | "retired";
419
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
420
- readonly clientRegistrationId: string;
421
- readonly scopes: readonly string[];
422
- readonly resources: readonly string[];
423
- readonly retention: "access-and-refresh" | "access-only";
424
- readonly maximumAccessLifetimeMillis: number;
425
- readonly maximumRefreshLifetimeMillis?: number;
426
- readonly refreshAheadMillis: number;
427
- readonly refresh: "confidential" | "rotating" | "unsupported";
428
- readonly revocation: "cohort" | "unsupported";
429
- };
430
- readonly returnTarget: string & import("effect/Brand").Brand<"effect-auth/OAuthReturnTarget">;
431
- readonly stateDigest: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
432
- readonly requestBindingVerifier: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
433
- readonly requestBindingExpiresAtMillis: number;
434
- readonly issuedAtMillis: number;
435
- readonly expiresAtMillis: number;
436
- readonly claimLifetimeMillis: number;
437
- readonly namespace: "effect-auth/oauth-link-context/v1";
438
- readonly revision: {
439
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
440
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
441
- readonly credentials: readonly {
442
- readonly credentialId: string;
443
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
444
- }[];
445
- };
446
- readonly maximumEvidenceAgeMillis: number;
447
- };
448
- readonly sealed: {
449
- readonly format: "oauth-xchacha20poly1305-v1";
450
- readonly keyId: string;
451
- readonly nonce: string;
452
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
453
- };
454
- readonly retentionUntilMillis: number;
455
- };
456
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
457
- readonly claimedAtMillis: number;
458
- readonly claimExpiresAtMillis: number;
459
- };
460
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
461
- readonly settle: <A>(input: {
462
- readonly claim: import("@yielded/auth/OAuth").OAuthLinkClaim;
463
- readonly outcome: import("@yielded/auth/OAuth").OAuthLinkOutcome;
464
- readonly authorization: import("@yielded/auth/OAuth").OAuthActionAuthorization;
465
- readonly invalidation: import("@yielded/auth/Sessions").SessionInvalidationWindow;
466
- readonly nowMillis: number;
467
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
468
- readonly _tag: "Rejected";
469
- } | {
470
- readonly _tag: "Ambiguous";
471
- } | {
472
- readonly _tag: "Cancelled";
473
- } | {
474
- readonly _tag: "Linked";
475
- readonly credential: {
476
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
477
- readonly identity: {
478
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
479
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
480
- readonly subject: string;
481
- };
482
- readonly credentialId: string;
483
- readonly credentialRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
484
- readonly revision: {
485
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
486
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
487
- readonly credentials: readonly {
488
- readonly credentialId: string;
489
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
490
- }[];
491
- };
492
- };
493
- readonly changed: boolean;
494
- } | {
495
- readonly _tag: "Conflict";
496
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
497
- readonly inspectUnlink: (input: {
498
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
499
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
500
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
501
- readonly credentialId: string;
502
- }) => Effect.Effect<{
503
- readonly _tag: "Rejected";
504
- } | {
505
- readonly _tag: "Conflict";
506
- } | {
507
- readonly _tag: "Target";
508
- readonly credential: {
509
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
510
- readonly identity: {
511
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
512
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
513
- readonly subject: string;
514
- };
515
- readonly credentialId: string;
516
- readonly credentialRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
517
- readonly revision: {
518
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
519
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
520
- readonly credentials: readonly {
521
- readonly credentialId: string;
522
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
523
- }[];
524
- };
525
- };
526
- } | {
527
- readonly _tag: "Replay";
528
- readonly result: {
529
- readonly _tag: "Unlinked";
530
- readonly credentialId: string;
531
- readonly invalidation: {
532
- readonly trigger: "all-session-revocation" | "credential-change" | "factor-reset" | "identifier-change" | "password-reset" | "subject-delete" | "subject-disable";
533
- readonly existingSessions: "cache-expiry" | "immediate" | "original-absolute-expiry";
534
- readonly maximumExposureMillis: number;
535
- readonly oldAuthenticationEvidence: "rejected";
536
- };
537
- };
538
- }, import("@yielded/auth/OAuth").OAuthUnavailable>;
539
- readonly unlink: <A>(input: {
540
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
541
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
542
- readonly credential: import("@yielded/auth/OAuth").OAuthCredentialSnapshot;
543
- readonly authorization: import("@yielded/auth/OAuth").OAuthActionAuthorization;
544
- readonly invalidation: import("@yielded/auth/Sessions").SessionInvalidationWindow;
545
- readonly nowMillis: number;
546
- readonly retentionUntilMillis: number;
547
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
548
- readonly _tag: "Rejected";
549
- } | {
550
- readonly _tag: "Conflict";
551
- } | {
552
- readonly _tag: "Unlinked";
553
- readonly result: {
554
- readonly _tag: "Unlinked";
555
- readonly credentialId: string;
556
- readonly invalidation: {
557
- readonly trigger: "all-session-revocation" | "credential-change" | "factor-reset" | "identifier-change" | "password-reset" | "subject-delete" | "subject-disable";
558
- readonly existingSessions: "cache-expiry" | "immediate" | "original-absolute-expiry";
559
- readonly maximumExposureMillis: number;
560
- readonly oldAuthenticationEvidence: "rejected";
561
- };
562
- };
563
- readonly replayed: boolean;
564
- } | {
565
- readonly _tag: "LastSignInMethod";
566
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
567
- readonly cleanup: <A>(input: import("@yielded/auth/OAuth").OAuthCleanupInput, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
568
- readonly terminalized: number;
569
- readonly removed: number;
570
- readonly hasMore: boolean;
571
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
572
- };
134
+ }>, N>(mapping: OAuthAccountsMapping<S, O, C, AC, F, N>) => Effect.Effect<{
135
+ readonly oauthAccountsPersistence: import("@yielded/auth/OAuth").OAuthAccountsPersistence["Service"];
573
136
  }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthSignInServices: <S extends AnySQLiteTable<{
574
137
  dialect: "sqlite";
575
138
  }>, O extends AnySQLiteTable<{
@@ -581,60 +144,13 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
581
144
  }>, F extends AnySQLiteTable<{
582
145
  dialect: "sqlite";
583
146
  }>, N>(mapping: OAuthSignInMapping<S, O, C, AC, F, N>) => Effect.Effect<{
584
- oauthSignInPersistence: {
585
- readonly issue: <A>(input: import("@yielded/auth/OAuth").OAuthPendingFlow, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<import("@yielded/auth/OAuth").OAuthIssueDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
586
- readonly claim: <A>(input: {
587
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
588
- readonly generation: number;
589
- readonly flowId: import("@yielded/auth/Operations").RequestBindingFlowId;
590
- readonly provider: import("@yielded/auth/OAuth").OAuthProviderKey;
591
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
592
- readonly stateDigest: import("@yielded/auth/Schema").TokenDigest;
593
- readonly requestBindingVerifier: import("@yielded/auth/Schema").TokenDigest;
594
- readonly requestBindingExpiresAtMillis: number;
595
- readonly responseIssuer?: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
596
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
597
- readonly nowMillis: number;
598
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<import("@yielded/auth/OAuth").OAuthClaimDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
599
- readonly settle: <A>(input: {
600
- readonly claim: import("@yielded/auth/OAuth").OAuthClaim;
601
- readonly outcome: {
602
- readonly _tag: "Verified";
603
- readonly identity: import("@yielded/auth/OAuth").OAuthVerifiedExternalIdentity;
604
- } | {
605
- readonly _tag: "Cancelled" | "Rejected" | "Ambiguous";
606
- };
607
- readonly nowMillis: number;
608
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<import("@yielded/auth/OAuth").OAuthSettlementDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
609
- readonly cleanup: <A>(input: import("@yielded/auth/OAuth").OAuthCleanupInput, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
610
- readonly terminalized: number;
611
- readonly removed: number;
612
- readonly hasMore: boolean;
613
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
614
- };
615
- }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthRegistrationIntentServices: <S extends AnySQLiteTable<{
616
- dialect: "sqlite";
617
- }>, O extends AnySQLiteTable<{
618
- dialect: "sqlite";
619
- }>, C extends AnySQLiteTable<{
620
- dialect: "sqlite";
621
- }>, AC extends AnySQLiteTable<{
622
- dialect: "sqlite";
623
- }>, F extends AnySQLiteTable<{
624
- dialect: "sqlite";
625
- }>, TA extends AnySQLiteTable<{
147
+ readonly oauthSignInPersistence: import("@yielded/auth/OAuth").OAuthSignInPersistence["Service"];
148
+ }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthRegistrationIntentServices: <O extends AnySQLiteTable<{
626
149
  dialect: "sqlite";
627
150
  }>, I extends AnySQLiteTable<{
628
151
  dialect: "sqlite";
629
- }>, N>(mapping: OAuthRegistrationIntentMapping<S, O, C, AC, F, TA, I, N>) => Effect.Effect<{
630
- oauthRegistrationIntents: {
631
- readonly settle: <A>(input: {
632
- readonly claim: import("@yielded/auth/OAuth").OAuthClaim;
633
- readonly identity: import("@yielded/auth/OAuth").OAuthVerifiedExternalIdentity;
634
- readonly intent?: import("@yielded/auth/OAuth").OAuthRegistrationIntent;
635
- readonly nowMillis: number;
636
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<import("@yielded/auth/OAuth").OAuthRegistrationSettlement, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
637
- };
152
+ }>, N>(mapping: OAuthRegistrationIntentMapping<O, I, N>) => Effect.Effect<{
153
+ readonly oauthRegistrationIntents: import("@yielded/auth/OAuth").OAuthRegistrationIntents["Service"];
638
154
  }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthRegistrationServices: <Registration, S extends AnySQLiteTable<{
639
155
  dialect: "sqlite";
640
156
  }>, O extends AnySQLiteTable<{
@@ -643,14 +159,10 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
643
159
  dialect: "sqlite";
644
160
  }>, AC extends AnySQLiteTable<{
645
161
  dialect: "sqlite";
646
- }>, TA extends AnySQLiteTable<{
647
- dialect: "sqlite";
648
162
  }>, I extends AnySQLiteTable<{
649
163
  dialect: "sqlite";
650
- }>, R extends AnySQLiteTable<{
651
- dialect: "sqlite";
652
- }>, N>(mapping: OAuthRegistrationMapping<Registration, S, O, C, AC, TA, I, R, N>) => Effect.Effect<{
653
- registrationAuthority: import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>;
164
+ }>, N>(mapping: OAuthRegistrationMapping<Registration, S, O, C, AC, I, N>) => Effect.Effect<{
165
+ readonly registrationAuthority: import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>;
654
166
  }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateOAuthRegistration: {
655
167
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable<{
656
168
  dialect: "sqlite";
@@ -660,17 +172,13 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
660
172
  dialect: "sqlite";
661
173
  }>, AC extends AnySQLiteTable<{
662
174
  dialect: "sqlite";
663
- }>, TA extends AnySQLiteTable<{
664
- dialect: "sqlite";
665
175
  }>, I extends AnySQLiteTable<{
666
176
  dialect: "sqlite";
667
- }>, Rq extends AnySQLiteTable<{
668
- dialect: "sqlite";
669
177
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
670
- readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, TA, I, Rq, N>;
178
+ readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, I, N>;
671
179
  readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>>;
672
180
  readonly transaction?: never;
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>>;
181
+ }, 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>>;
674
182
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, TargetId, Registration, S extends AnySQLiteTable<{
675
183
  dialect: "sqlite";
676
184
  }>, O extends AnySQLiteTable<{
@@ -679,19 +187,15 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
679
187
  dialect: "sqlite";
680
188
  }>, AC extends AnySQLiteTable<{
681
189
  dialect: "sqlite";
682
- }>, TA extends AnySQLiteTable<{
683
- dialect: "sqlite";
684
190
  }>, I extends AnySQLiteTable<{
685
191
  dialect: "sqlite";
686
- }>, Rq extends AnySQLiteTable<{
687
- dialect: "sqlite";
688
192
  }>, N, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
689
- readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, TA, I, Rq, N>;
193
+ readonly mapping: OAuthRegistrationMapping<NoInfer<Registration>, S, O, C, AC, I, N>;
690
194
  readonly target: SuppliedService<TargetId, import("@yielded/auth-persistence/Adapter").OAuthRegistrationAuthority<Registration>>;
691
195
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
692
196
  readonly transaction: (...args: any[]) => any;
693
197
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
198
+ }, 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>>;
695
199
  }, coordinateOAuthSignIn: {
696
200
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
697
201
  dialect: "sqlite";
@@ -706,7 +210,7 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
706
210
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
707
211
  readonly mapping: OAuthSignInMapping<S, O, C, AC, F, N>;
708
212
  readonly transaction?: never;
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>>;
213
+ }, 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>>;
710
214
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
711
215
  dialect: "sqlite";
712
216
  }>, O extends AnySQLiteTable<{
@@ -722,46 +226,26 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
722
226
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
723
227
  readonly transaction: (...args: any[]) => any;
724
228
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
229
+ }, 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>>;
726
230
  }, coordinateOAuthRegistrationIntents: {
727
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
728
- dialect: "sqlite";
729
- }>, O extends AnySQLiteTable<{
730
- dialect: "sqlite";
731
- }>, C extends AnySQLiteTable<{
732
- dialect: "sqlite";
733
- }>, AC extends AnySQLiteTable<{
734
- dialect: "sqlite";
735
- }>, F extends AnySQLiteTable<{
736
- dialect: "sqlite";
737
- }>, TA extends AnySQLiteTable<{
231
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, O extends AnySQLiteTable<{
738
232
  dialect: "sqlite";
739
233
  }>, I extends AnySQLiteTable<{
740
234
  dialect: "sqlite";
741
235
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
742
- readonly mapping: OAuthRegistrationIntentMapping<S, O, C, AC, F, TA, I, N>;
236
+ readonly mapping: OAuthRegistrationIntentMapping<O, I, N>;
743
237
  readonly transaction?: never;
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>>;
745
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
746
- dialect: "sqlite";
747
- }>, O extends AnySQLiteTable<{
748
- dialect: "sqlite";
749
- }>, C extends AnySQLiteTable<{
750
- dialect: "sqlite";
751
- }>, AC extends AnySQLiteTable<{
752
- dialect: "sqlite";
753
- }>, F extends AnySQLiteTable<{
754
- dialect: "sqlite";
755
- }>, TA extends AnySQLiteTable<{
238
+ }, 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>>;
239
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, O extends AnySQLiteTable<{
756
240
  dialect: "sqlite";
757
241
  }>, I extends AnySQLiteTable<{
758
242
  dialect: "sqlite";
759
243
  }>, N, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
760
- readonly mapping: OAuthRegistrationIntentMapping<S, O, C, AC, F, TA, I, N>;
244
+ readonly mapping: OAuthRegistrationIntentMapping<O, I, N>;
761
245
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
762
246
  readonly transaction: (...args: any[]) => any;
763
247
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
248
+ }, 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>>;
765
249
  }, coordinateOAuthAccounts: {
766
250
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
767
251
  dialect: "sqlite";
@@ -773,14 +257,10 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
773
257
  dialect: "sqlite";
774
258
  }>, F extends AnySQLiteTable<{
775
259
  dialect: "sqlite";
776
- }>, TA extends AnySQLiteTable<{
777
- dialect: "sqlite";
778
- }>, U extends AnySQLiteTable<{
779
- dialect: "sqlite";
780
260
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
781
- readonly mapping: OAuthAccountsMapping<S, O, C, AC, F, TA, U, N>;
261
+ readonly mapping: OAuthAccountsMapping<S, O, C, AC, F, N>;
782
262
  readonly transaction?: never;
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>>;
263
+ }, 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>>;
784
264
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
785
265
  dialect: "sqlite";
786
266
  }>, O extends AnySQLiteTable<{
@@ -791,1210 +271,92 @@ export declare const makeOAuthAccountsServices: <S extends AnySQLiteTable<{
791
271
  dialect: "sqlite";
792
272
  }>, F extends AnySQLiteTable<{
793
273
  dialect: "sqlite";
794
- }>, TA extends AnySQLiteTable<{
795
- dialect: "sqlite";
796
- }>, U extends AnySQLiteTable<{
797
- dialect: "sqlite";
798
274
  }>, N, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
799
- readonly mapping: OAuthAccountsMapping<S, O, C, AC, F, TA, U, N>;
275
+ readonly mapping: OAuthAccountsMapping<S, O, C, AC, F, N>;
800
276
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
801
277
  readonly transaction: (...args: any[]) => any;
802
278
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
279
+ }, 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>>;
804
280
  }, makeOAuthConnectedServices: <S extends AnySQLiteTable<{
805
281
  dialect: "sqlite";
806
282
  }>, AC extends AnySQLiteTable<{
807
283
  dialect: "sqlite";
808
- }>, T extends AnySQLiteTable<{
809
- dialect: "sqlite";
810
284
  }>, O extends AnySQLiteTable<{
811
285
  dialect: "sqlite";
812
286
  }>, F extends AnySQLiteTable<{
813
287
  dialect: "sqlite";
814
288
  }>, G extends AnySQLiteTable<{
815
289
  dialect: "sqlite";
816
- }>, C extends AnySQLiteTable<{
817
- dialect: "sqlite";
818
- }>, H extends AnySQLiteTable<{
819
- dialect: "sqlite";
820
- }>, UA extends AnySQLiteTable<{
821
- dialect: "sqlite";
822
- }>, DC extends AnySQLiteTable<{
823
- dialect: "sqlite";
824
290
  }>, N, J extends AnySQLiteTable<{
825
291
  dialect: "sqlite";
826
- }> = never>(mapping: OAuthConnectedMapping<S, AC, T, O, F, G, C, H, UA, DC, N, J>) => Effect.Effect<{
827
- oauthConnectedPersistence: {
828
- readonly claimSignIn: <A>(input: {
829
- readonly claim: import("@yielded/auth/OAuth").OAuthClaim;
830
- readonly configuration: import("@yielded/auth/OAuth").OAuthConnectedConfiguration;
831
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<import("@yielded/auth/OAuth").OAuthSignInAccessClaim, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
832
- readonly inspectSignIn: (input: {
833
- readonly reservation: import("@yielded/auth/OAuth").OAuthSignInAccessClaim;
834
- readonly credential: import("@yielded/auth/OAuth").OAuthCredentialSnapshot;
835
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
836
- }) => Effect.Effect<import("@yielded/auth/OAuth").OAuthSignInAccessInspection, import("@yielded/auth/OAuth").OAuthUnavailable>;
837
- readonly settleSignIn: <A>(input: {
838
- readonly reservation: import("@yielded/auth/OAuth").OAuthSignInAccessClaim;
839
- readonly outcome: import("@yielded/auth/OAuth").OAuthSignInAccessOutcome;
840
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
841
- readonly _tag: "Rejected";
842
- } | {
843
- readonly _tag: "Ambiguous";
844
- } | {
845
- readonly _tag: "Cancelled";
846
- } | {
847
- readonly _tag: "Conflict";
848
- } | {
849
- readonly _tag: "Connected";
850
- readonly grant: {
851
- readonly context: {
852
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
853
- readonly exchangeOrder: string;
854
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
855
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
856
- readonly identity: {
857
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
858
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
859
- readonly subject: string;
860
- };
861
- readonly configuration: {
862
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
863
- readonly protocol: "oauth" | "oidc";
864
- readonly configurationGeneration: number;
865
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
866
- readonly responseIssuerMode: "required" | "unsupported";
867
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
868
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
869
- readonly profile: {
870
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
871
- readonly generation: number;
872
- readonly issuance: "active" | "retired";
873
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
874
- readonly clientRegistrationId: string;
875
- readonly scopes: readonly string[];
876
- readonly resources: readonly string[];
877
- readonly retention: "access-and-refresh" | "access-only";
878
- readonly maximumAccessLifetimeMillis: number;
879
- readonly maximumRefreshLifetimeMillis?: number;
880
- readonly refreshAheadMillis: number;
881
- readonly refresh: "confidential" | "rotating" | "unsupported";
882
- readonly revocation: "cohort" | "unsupported";
883
- };
884
- };
885
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
886
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
887
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
888
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
889
- readonly metadata: {
890
- readonly scopes: readonly string[];
891
- readonly resources: readonly string[];
892
- readonly accessExpiresAtMillis?: number;
893
- readonly refreshExpiresAtMillis?: number;
894
- readonly useUntilMillis: number;
895
- readonly refreshUseUntilMillis?: number;
896
- readonly obtainedAtMillis: number;
897
- readonly profile?: {
898
- readonly displayName?: string;
899
- readonly handle?: string;
900
- readonly avatarUrl?: string;
901
- readonly profileUrl?: string;
902
- readonly email?: string;
903
- readonly emailVerified?: boolean;
904
- readonly providerData?: {
905
- readonly [x: string]: import("effect/Schema").Json;
906
- };
907
- };
908
- };
909
- };
910
- readonly sealed: {
911
- readonly format: "oauth-connected-xchacha20poly1305-v1";
912
- readonly keyId: string;
913
- readonly nonce: string;
914
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
915
- };
916
- };
917
- } | {
918
- readonly _tag: "Busy";
919
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
920
- readonly capture: (input: {
921
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
922
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
923
- readonly grantId?: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
924
- }) => Effect.Effect<{
925
- readonly revision: import("@yielded/auth/OAuth").OAuthAccountRevision;
926
- readonly target?: import("@yielded/auth/OAuth").OAuthConnectedTarget;
927
- } | undefined, import("@yielded/auth/OAuth").OAuthUnavailable>;
928
- readonly issue: <A>(input: {
929
- readonly flow: import("@yielded/auth/OAuth").OAuthConnectedPendingFlow;
930
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedActionAuthorization;
931
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
932
- readonly _tag: "Rejected";
933
- } | {
934
- readonly _tag: "Issued";
935
- readonly flow: {
936
- readonly context: {
937
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
938
- readonly protocol: "oauth" | "oidc";
939
- readonly configurationGeneration: number;
940
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
941
- readonly responseIssuerMode: "required" | "unsupported";
942
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
943
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
944
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
945
- readonly generation: number;
946
- readonly flowId: string & import("effect/Brand").Brand<"effect-auth/RequestBindingFlowId">;
947
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
948
- readonly access?: {
949
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
950
- readonly generation: number;
951
- readonly issuance: "active" | "retired";
952
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
953
- readonly clientRegistrationId: string;
954
- readonly scopes: readonly string[];
955
- readonly resources: readonly string[];
956
- readonly retention: "access-and-refresh" | "access-only";
957
- readonly maximumAccessLifetimeMillis: number;
958
- readonly maximumRefreshLifetimeMillis?: number;
959
- readonly refreshAheadMillis: number;
960
- readonly refresh: "confidential" | "rotating" | "unsupported";
961
- readonly revocation: "cohort" | "unsupported";
962
- };
963
- readonly returnTarget: string & import("effect/Brand").Brand<"effect-auth/OAuthReturnTarget">;
964
- readonly stateDigest: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
965
- readonly requestBindingVerifier: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
966
- readonly requestBindingExpiresAtMillis: number;
967
- readonly issuedAtMillis: number;
968
- readonly expiresAtMillis: number;
969
- readonly claimLifetimeMillis: number;
970
- readonly namespace: "effect-auth/oauth-connected-context/v1";
971
- readonly revision: {
972
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
973
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
974
- readonly credentials: readonly {
975
- readonly credentialId: string;
976
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
977
- }[];
978
- };
979
- readonly profile: {
980
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
981
- readonly generation: number;
982
- readonly issuance: "active" | "retired";
983
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
984
- readonly clientRegistrationId: string;
985
- readonly scopes: readonly string[];
986
- readonly resources: readonly string[];
987
- readonly retention: "access-and-refresh" | "access-only";
988
- readonly maximumAccessLifetimeMillis: number;
989
- readonly maximumRefreshLifetimeMillis?: number;
990
- readonly refreshAheadMillis: number;
991
- readonly refresh: "confidential" | "rotating" | "unsupported";
992
- readonly revocation: "cohort" | "unsupported";
993
- };
994
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
995
- readonly reconnect?: {
996
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
997
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
998
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
999
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1000
- readonly identity: {
1001
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1002
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1003
- readonly subject: string;
1004
- };
1005
- readonly configuration: {
1006
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1007
- readonly protocol: "oauth" | "oidc";
1008
- readonly configurationGeneration: number;
1009
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1010
- readonly responseIssuerMode: "required" | "unsupported";
1011
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1012
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1013
- readonly profile: {
1014
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1015
- readonly generation: number;
1016
- readonly issuance: "active" | "retired";
1017
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1018
- readonly clientRegistrationId: string;
1019
- readonly scopes: readonly string[];
1020
- readonly resources: readonly string[];
1021
- readonly retention: "access-and-refresh" | "access-only";
1022
- readonly maximumAccessLifetimeMillis: number;
1023
- readonly maximumRefreshLifetimeMillis?: number;
1024
- readonly refreshAheadMillis: number;
1025
- readonly refresh: "confidential" | "rotating" | "unsupported";
1026
- readonly revocation: "cohort" | "unsupported";
1027
- };
1028
- };
1029
- };
1030
- readonly maximumEvidenceAgeMillis: number;
1031
- };
1032
- readonly sealed: {
1033
- readonly format: "oauth-xchacha20poly1305-v1";
1034
- readonly keyId: string;
1035
- readonly nonce: string;
1036
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1037
- };
1038
- readonly retentionUntilMillis: number;
1039
- };
1040
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1041
- readonly prepare: <A>(input: {
1042
- readonly flow: import("@yielded/auth/OAuth").OAuthConnectedPendingFlow;
1043
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1044
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1045
- readonly _tag: "Rejected";
1046
- } | {
1047
- readonly _tag: "Issued";
1048
- readonly flow: {
1049
- readonly context: {
1050
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1051
- readonly protocol: "oauth" | "oidc";
1052
- readonly configurationGeneration: number;
1053
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1054
- readonly responseIssuerMode: "required" | "unsupported";
1055
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1056
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1057
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1058
- readonly generation: number;
1059
- readonly flowId: string & import("effect/Brand").Brand<"effect-auth/RequestBindingFlowId">;
1060
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
1061
- readonly access?: {
1062
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1063
- readonly generation: number;
1064
- readonly issuance: "active" | "retired";
1065
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1066
- readonly clientRegistrationId: string;
1067
- readonly scopes: readonly string[];
1068
- readonly resources: readonly string[];
1069
- readonly retention: "access-and-refresh" | "access-only";
1070
- readonly maximumAccessLifetimeMillis: number;
1071
- readonly maximumRefreshLifetimeMillis?: number;
1072
- readonly refreshAheadMillis: number;
1073
- readonly refresh: "confidential" | "rotating" | "unsupported";
1074
- readonly revocation: "cohort" | "unsupported";
1075
- };
1076
- readonly returnTarget: string & import("effect/Brand").Brand<"effect-auth/OAuthReturnTarget">;
1077
- readonly stateDigest: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
1078
- readonly requestBindingVerifier: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
1079
- readonly requestBindingExpiresAtMillis: number;
1080
- readonly issuedAtMillis: number;
1081
- readonly expiresAtMillis: number;
1082
- readonly claimLifetimeMillis: number;
1083
- readonly namespace: "effect-auth/oauth-connected-context/v1";
1084
- readonly revision: {
1085
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1086
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1087
- readonly credentials: readonly {
1088
- readonly credentialId: string;
1089
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1090
- }[];
1091
- };
1092
- readonly profile: {
1093
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1094
- readonly generation: number;
1095
- readonly issuance: "active" | "retired";
1096
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1097
- readonly clientRegistrationId: string;
1098
- readonly scopes: readonly string[];
1099
- readonly resources: readonly string[];
1100
- readonly retention: "access-and-refresh" | "access-only";
1101
- readonly maximumAccessLifetimeMillis: number;
1102
- readonly maximumRefreshLifetimeMillis?: number;
1103
- readonly refreshAheadMillis: number;
1104
- readonly refresh: "confidential" | "rotating" | "unsupported";
1105
- readonly revocation: "cohort" | "unsupported";
1106
- };
1107
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1108
- readonly reconnect?: {
1109
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1110
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1111
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1112
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1113
- readonly identity: {
1114
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1115
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1116
- readonly subject: string;
1117
- };
1118
- readonly configuration: {
1119
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1120
- readonly protocol: "oauth" | "oidc";
1121
- readonly configurationGeneration: number;
1122
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1123
- readonly responseIssuerMode: "required" | "unsupported";
1124
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1125
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1126
- readonly profile: {
1127
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1128
- readonly generation: number;
1129
- readonly issuance: "active" | "retired";
1130
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1131
- readonly clientRegistrationId: string;
1132
- readonly scopes: readonly string[];
1133
- readonly resources: readonly string[];
1134
- readonly retention: "access-and-refresh" | "access-only";
1135
- readonly maximumAccessLifetimeMillis: number;
1136
- readonly maximumRefreshLifetimeMillis?: number;
1137
- readonly refreshAheadMillis: number;
1138
- readonly refresh: "confidential" | "rotating" | "unsupported";
1139
- readonly revocation: "cohort" | "unsupported";
1140
- };
1141
- };
1142
- };
1143
- readonly maximumEvidenceAgeMillis: number;
1144
- };
1145
- readonly sealed: {
1146
- readonly format: "oauth-xchacha20poly1305-v1";
1147
- readonly keyId: string;
1148
- readonly nonce: string;
1149
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1150
- };
1151
- readonly retentionUntilMillis: number;
1152
- };
1153
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1154
- readonly inspectPrepared: (input: import("@yielded/auth/OAuth").OAuthConnectedPreparedAccess) => Effect.Effect<import("@yielded/auth/OAuth").OAuthConnectedPendingFlow | undefined, import("@yielded/auth/OAuth").OAuthUnavailable>;
1155
- readonly preflight: (input: import("@yielded/auth/OAuth").OAuthConnectedAccess) => Effect.Effect<import("@yielded/auth/OAuth").OAuthConnectedPendingFlow | undefined, import("@yielded/auth/OAuth").OAuthUnavailable>;
1156
- readonly claim: <A>(input: {
1157
- readonly access: import("@yielded/auth/OAuth").OAuthConnectedAccess;
1158
- readonly flow: import("@yielded/auth/OAuth").OAuthConnectedPendingFlow;
1159
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1160
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedActionAuthorization;
1161
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1162
- readonly _tag: "Rejected";
1163
- } | {
1164
- readonly _tag: "Claimed";
1165
- readonly claim: {
1166
- readonly flow: {
1167
- readonly context: {
1168
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1169
- readonly protocol: "oauth" | "oidc";
1170
- readonly configurationGeneration: number;
1171
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1172
- readonly responseIssuerMode: "required" | "unsupported";
1173
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1174
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1175
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1176
- readonly generation: number;
1177
- readonly flowId: string & import("effect/Brand").Brand<"effect-auth/RequestBindingFlowId">;
1178
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
1179
- readonly access?: {
1180
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1181
- readonly generation: number;
1182
- readonly issuance: "active" | "retired";
1183
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1184
- readonly clientRegistrationId: string;
1185
- readonly scopes: readonly string[];
1186
- readonly resources: readonly string[];
1187
- readonly retention: "access-and-refresh" | "access-only";
1188
- readonly maximumAccessLifetimeMillis: number;
1189
- readonly maximumRefreshLifetimeMillis?: number;
1190
- readonly refreshAheadMillis: number;
1191
- readonly refresh: "confidential" | "rotating" | "unsupported";
1192
- readonly revocation: "cohort" | "unsupported";
1193
- };
1194
- readonly returnTarget: string & import("effect/Brand").Brand<"effect-auth/OAuthReturnTarget">;
1195
- readonly stateDigest: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
1196
- readonly requestBindingVerifier: string & import("effect/Brand").Brand<"effect-auth/TokenDigest">;
1197
- readonly requestBindingExpiresAtMillis: number;
1198
- readonly issuedAtMillis: number;
1199
- readonly expiresAtMillis: number;
1200
- readonly claimLifetimeMillis: number;
1201
- readonly namespace: "effect-auth/oauth-connected-context/v1";
1202
- readonly revision: {
1203
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1204
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1205
- readonly credentials: readonly {
1206
- readonly credentialId: string;
1207
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1208
- }[];
1209
- };
1210
- readonly profile: {
1211
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1212
- readonly generation: number;
1213
- readonly issuance: "active" | "retired";
1214
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1215
- readonly clientRegistrationId: string;
1216
- readonly scopes: readonly string[];
1217
- readonly resources: readonly string[];
1218
- readonly retention: "access-and-refresh" | "access-only";
1219
- readonly maximumAccessLifetimeMillis: number;
1220
- readonly maximumRefreshLifetimeMillis?: number;
1221
- readonly refreshAheadMillis: number;
1222
- readonly refresh: "confidential" | "rotating" | "unsupported";
1223
- readonly revocation: "cohort" | "unsupported";
1224
- };
1225
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1226
- readonly reconnect?: {
1227
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1228
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1229
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1230
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1231
- readonly identity: {
1232
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1233
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1234
- readonly subject: string;
1235
- };
1236
- readonly configuration: {
1237
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1238
- readonly protocol: "oauth" | "oidc";
1239
- readonly configurationGeneration: number;
1240
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1241
- readonly responseIssuerMode: "required" | "unsupported";
1242
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1243
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1244
- readonly profile: {
1245
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1246
- readonly generation: number;
1247
- readonly issuance: "active" | "retired";
1248
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1249
- readonly clientRegistrationId: string;
1250
- readonly scopes: readonly string[];
1251
- readonly resources: readonly string[];
1252
- readonly retention: "access-and-refresh" | "access-only";
1253
- readonly maximumAccessLifetimeMillis: number;
1254
- readonly maximumRefreshLifetimeMillis?: number;
1255
- readonly refreshAheadMillis: number;
1256
- readonly refresh: "confidential" | "rotating" | "unsupported";
1257
- readonly revocation: "cohort" | "unsupported";
1258
- };
1259
- };
1260
- };
1261
- readonly maximumEvidenceAgeMillis: number;
1262
- };
1263
- readonly sealed: {
1264
- readonly format: "oauth-xchacha20poly1305-v1";
1265
- readonly keyId: string;
1266
- readonly nonce: string;
1267
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1268
- };
1269
- readonly retentionUntilMillis: number;
1270
- };
1271
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1272
- readonly claimedAtMillis: number;
1273
- readonly claimExpiresAtMillis: number;
1274
- readonly order: string;
1275
- };
1276
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1277
- readonly inspectGrant: (input: {
1278
- readonly claim: import("@yielded/auth/OAuth").OAuthConnectedClaim;
1279
- readonly identity: {
1280
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1281
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1282
- readonly subject: string;
1283
- };
1284
- }) => Effect.Effect<{
1285
- readonly _tag: "Rejected";
1286
- } | {
1287
- readonly _tag: "Conflict";
1288
- } | {
1289
- readonly _tag: "Target";
1290
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1291
- } | {
1292
- readonly _tag: "Quarantine";
1293
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1294
- }, import("@yielded/auth/OAuth").OAuthUnavailable>;
1295
- readonly settle: <A>(input: {
1296
- readonly claim: import("@yielded/auth/OAuth").OAuthConnectedClaim;
1297
- readonly outcome: import("@yielded/auth/OAuth").OAuthConnectedOutcome;
1298
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedActionAuthorization;
1299
- readonly nowMillis: number;
1300
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1301
- readonly _tag: "Rejected";
1302
- } | {
1303
- readonly _tag: "Ambiguous";
1304
- } | {
1305
- readonly _tag: "Cancelled";
1306
- } | {
1307
- readonly _tag: "Conflict";
1308
- } | {
1309
- readonly _tag: "Connected";
1310
- readonly grant: {
1311
- readonly context: {
1312
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1313
- readonly exchangeOrder: string;
1314
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1315
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1316
- readonly identity: {
1317
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1318
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1319
- readonly subject: string;
1320
- };
1321
- readonly configuration: {
1322
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1323
- readonly protocol: "oauth" | "oidc";
1324
- readonly configurationGeneration: number;
1325
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1326
- readonly responseIssuerMode: "required" | "unsupported";
1327
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1328
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1329
- readonly profile: {
1330
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1331
- readonly generation: number;
1332
- readonly issuance: "active" | "retired";
1333
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1334
- readonly clientRegistrationId: string;
1335
- readonly scopes: readonly string[];
1336
- readonly resources: readonly string[];
1337
- readonly retention: "access-and-refresh" | "access-only";
1338
- readonly maximumAccessLifetimeMillis: number;
1339
- readonly maximumRefreshLifetimeMillis?: number;
1340
- readonly refreshAheadMillis: number;
1341
- readonly refresh: "confidential" | "rotating" | "unsupported";
1342
- readonly revocation: "cohort" | "unsupported";
1343
- };
1344
- };
1345
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1346
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1347
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1348
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1349
- readonly metadata: {
1350
- readonly scopes: readonly string[];
1351
- readonly resources: readonly string[];
1352
- readonly accessExpiresAtMillis?: number;
1353
- readonly refreshExpiresAtMillis?: number;
1354
- readonly useUntilMillis: number;
1355
- readonly refreshUseUntilMillis?: number;
1356
- readonly obtainedAtMillis: number;
1357
- readonly profile?: {
1358
- readonly displayName?: string;
1359
- readonly handle?: string;
1360
- readonly avatarUrl?: string;
1361
- readonly profileUrl?: string;
1362
- readonly email?: string;
1363
- readonly emailVerified?: boolean;
1364
- readonly providerData?: {
1365
- readonly [x: string]: import("effect/Schema").Json;
1366
- };
1367
- };
1368
- };
1369
- };
1370
- readonly sealed: {
1371
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1372
- readonly keyId: string;
1373
- readonly nonce: string;
1374
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1375
- };
1376
- };
1377
- } | {
1378
- readonly _tag: "Busy";
1379
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1380
- readonly list: (input: {
1381
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1382
- readonly limit: number;
1383
- readonly cursor?: string;
1384
- }) => Effect.Effect<{
1385
- readonly items: readonly {
1386
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1387
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1388
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1389
- readonly profileKey: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1390
- readonly status: "Active" | "Disconnected" | "ReauthorizationRequired" | "Refreshing";
1391
- readonly scopes: readonly string[];
1392
- readonly accessExpiresAtMillis?: number;
1393
- readonly useUntilMillis: number;
1394
- readonly profile?: {
1395
- readonly displayName?: string;
1396
- readonly handle?: string;
1397
- readonly avatarUrl?: string;
1398
- readonly profileUrl?: string;
1399
- readonly email?: string;
1400
- readonly emailVerified?: boolean;
1401
- readonly providerData?: {
1402
- readonly [x: string]: import("effect/Schema").Json;
1403
- };
1404
- };
1405
- readonly remoteRevocation: "Confirmed" | "Pending" | "Unknown" | "Unsupported";
1406
- }[];
1407
- readonly cursor?: string;
1408
- }, import("@yielded/auth/OAuth").OAuthUnavailable>;
1409
- readonly inspectDisconnect: (input: {
1410
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1411
- readonly subjectId: import("@yielded/auth/Schema").SubjectId;
1412
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1413
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
1414
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1415
- }) => Effect.Effect<{
1416
- readonly _tag: "Rejected";
1417
- } | {
1418
- readonly _tag: "Conflict";
1419
- } | {
1420
- readonly _tag: "Target";
1421
- readonly grant: {
1422
- readonly context: {
1423
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1424
- readonly exchangeOrder: string;
1425
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1426
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1427
- readonly identity: {
1428
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1429
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1430
- readonly subject: string;
1431
- };
1432
- readonly configuration: {
1433
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1434
- readonly protocol: "oauth" | "oidc";
1435
- readonly configurationGeneration: number;
1436
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1437
- readonly responseIssuerMode: "required" | "unsupported";
1438
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1439
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1440
- readonly profile: {
1441
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1442
- readonly generation: number;
1443
- readonly issuance: "active" | "retired";
1444
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1445
- readonly clientRegistrationId: string;
1446
- readonly scopes: readonly string[];
1447
- readonly resources: readonly string[];
1448
- readonly retention: "access-and-refresh" | "access-only";
1449
- readonly maximumAccessLifetimeMillis: number;
1450
- readonly maximumRefreshLifetimeMillis?: number;
1451
- readonly refreshAheadMillis: number;
1452
- readonly refresh: "confidential" | "rotating" | "unsupported";
1453
- readonly revocation: "cohort" | "unsupported";
1454
- };
1455
- };
1456
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1457
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1458
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1459
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1460
- readonly metadata: {
1461
- readonly scopes: readonly string[];
1462
- readonly resources: readonly string[];
1463
- readonly accessExpiresAtMillis?: number;
1464
- readonly refreshExpiresAtMillis?: number;
1465
- readonly useUntilMillis: number;
1466
- readonly refreshUseUntilMillis?: number;
1467
- readonly obtainedAtMillis: number;
1468
- readonly profile?: {
1469
- readonly displayName?: string;
1470
- readonly handle?: string;
1471
- readonly avatarUrl?: string;
1472
- readonly profileUrl?: string;
1473
- readonly email?: string;
1474
- readonly emailVerified?: boolean;
1475
- readonly providerData?: {
1476
- readonly [x: string]: import("effect/Schema").Json;
1477
- };
1478
- };
1479
- };
1480
- };
1481
- readonly sealed?: {
1482
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1483
- readonly keyId: string;
1484
- readonly nonce: string;
1485
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1486
- };
1487
- };
1488
- readonly revision: {
1489
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1490
- readonly securityRevision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1491
- readonly credentials: readonly {
1492
- readonly credentialId: string;
1493
- readonly revision: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1494
- }[];
1495
- };
1496
- } | {
1497
- readonly _tag: "Replay";
1498
- readonly result: {
1499
- readonly _tag: "Disconnected";
1500
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1501
- readonly remoteRevocation: "Confirmed" | "Pending" | "Unknown" | "Unsupported";
1502
- readonly affectedGrantCount: number;
1503
- readonly replayed: boolean;
1504
- };
1505
- }, import("@yielded/auth/OAuth").OAuthUnavailable>;
1506
- readonly disconnect: <A>(input: {
1507
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1508
- readonly commandId: string & import("effect/Brand").Brand<"effect-auth/OAuthCommandId">;
1509
- readonly grant: import("@yielded/auth/OAuth").OAuthConnectedDisconnectGrant;
1510
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedActionAuthorization;
1511
- readonly revocation?: import("@yielded/auth/OAuth").OAuthConnectedRevocationJob;
1512
- readonly retentionUntilMillis: number;
1513
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1514
- readonly _tag: "Rejected";
1515
- } | {
1516
- readonly _tag: "Conflict";
1517
- } | {
1518
- readonly _tag: "Disconnected";
1519
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1520
- readonly remoteRevocation: "Confirmed" | "Pending" | "Unknown" | "Unsupported";
1521
- readonly affectedGrantCount: number;
1522
- readonly replayed: boolean;
1523
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1524
- readonly inspectAccess: (input: {
1525
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1526
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1527
- readonly profileKey: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1528
- }) => Effect.Effect<{
1529
- readonly _tag: "Rejected";
1530
- } | {
1531
- readonly _tag: "Busy";
1532
- } | {
1533
- readonly _tag: "Target";
1534
- readonly grant: {
1535
- readonly context: {
1536
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1537
- readonly exchangeOrder: string;
1538
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1539
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1540
- readonly identity: {
1541
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1542
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1543
- readonly subject: string;
1544
- };
1545
- readonly configuration: {
1546
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1547
- readonly protocol: "oauth" | "oidc";
1548
- readonly configurationGeneration: number;
1549
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1550
- readonly responseIssuerMode: "required" | "unsupported";
1551
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1552
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1553
- readonly profile: {
1554
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1555
- readonly generation: number;
1556
- readonly issuance: "active" | "retired";
1557
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1558
- readonly clientRegistrationId: string;
1559
- readonly scopes: readonly string[];
1560
- readonly resources: readonly string[];
1561
- readonly retention: "access-and-refresh" | "access-only";
1562
- readonly maximumAccessLifetimeMillis: number;
1563
- readonly maximumRefreshLifetimeMillis?: number;
1564
- readonly refreshAheadMillis: number;
1565
- readonly refresh: "confidential" | "rotating" | "unsupported";
1566
- readonly revocation: "cohort" | "unsupported";
1567
- };
1568
- };
1569
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1570
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1571
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1572
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1573
- readonly metadata: {
1574
- readonly scopes: readonly string[];
1575
- readonly resources: readonly string[];
1576
- readonly accessExpiresAtMillis?: number;
1577
- readonly refreshExpiresAtMillis?: number;
1578
- readonly useUntilMillis: number;
1579
- readonly refreshUseUntilMillis?: number;
1580
- readonly obtainedAtMillis: number;
1581
- readonly profile?: {
1582
- readonly displayName?: string;
1583
- readonly handle?: string;
1584
- readonly avatarUrl?: string;
1585
- readonly profileUrl?: string;
1586
- readonly email?: string;
1587
- readonly emailVerified?: boolean;
1588
- readonly providerData?: {
1589
- readonly [x: string]: import("effect/Schema").Json;
1590
- };
1591
- };
1592
- };
1593
- };
1594
- readonly sealed: {
1595
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1596
- readonly keyId: string;
1597
- readonly nonce: string;
1598
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1599
- };
1600
- };
1601
- } | {
1602
- readonly _tag: "ReauthorizationRequired";
1603
- }, import("@yielded/auth/OAuth").OAuthUnavailable>;
1604
- readonly claimRefresh: <A>(input: {
1605
- readonly grant: import("@yielded/auth/OAuth").OAuthConnectedStoredGrant;
1606
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1607
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1608
- readonly nextTokenVersion: import("@yielded/auth/OAuth").OAuthConnectedRefreshClaim["nextTokenVersion"];
1609
- readonly lifetimeMillis: number;
1610
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1611
- readonly _tag: "Rejected";
1612
- } | {
1613
- readonly _tag: "Busy";
1614
- } | {
1615
- readonly _tag: "ReauthorizationRequired";
1616
- } | {
1617
- readonly _tag: "Claimed";
1618
- readonly claim: {
1619
- readonly grant: {
1620
- readonly context: {
1621
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1622
- readonly exchangeOrder: string;
1623
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1624
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1625
- readonly identity: {
1626
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1627
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1628
- readonly subject: string;
1629
- };
1630
- readonly configuration: {
1631
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1632
- readonly protocol: "oauth" | "oidc";
1633
- readonly configurationGeneration: number;
1634
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1635
- readonly responseIssuerMode: "required" | "unsupported";
1636
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1637
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1638
- readonly profile: {
1639
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1640
- readonly generation: number;
1641
- readonly issuance: "active" | "retired";
1642
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1643
- readonly clientRegistrationId: string;
1644
- readonly scopes: readonly string[];
1645
- readonly resources: readonly string[];
1646
- readonly retention: "access-and-refresh" | "access-only";
1647
- readonly maximumAccessLifetimeMillis: number;
1648
- readonly maximumRefreshLifetimeMillis?: number;
1649
- readonly refreshAheadMillis: number;
1650
- readonly refresh: "confidential" | "rotating" | "unsupported";
1651
- readonly revocation: "cohort" | "unsupported";
1652
- };
1653
- };
1654
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1655
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1656
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1657
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1658
- readonly metadata: {
1659
- readonly scopes: readonly string[];
1660
- readonly resources: readonly string[];
1661
- readonly accessExpiresAtMillis?: number;
1662
- readonly refreshExpiresAtMillis?: number;
1663
- readonly useUntilMillis: number;
1664
- readonly refreshUseUntilMillis?: number;
1665
- readonly obtainedAtMillis: number;
1666
- readonly profile?: {
1667
- readonly displayName?: string;
1668
- readonly handle?: string;
1669
- readonly avatarUrl?: string;
1670
- readonly profileUrl?: string;
1671
- readonly email?: string;
1672
- readonly emailVerified?: boolean;
1673
- readonly providerData?: {
1674
- readonly [x: string]: import("effect/Schema").Json;
1675
- };
1676
- };
1677
- };
1678
- };
1679
- readonly sealed: {
1680
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1681
- readonly keyId: string;
1682
- readonly nonce: string;
1683
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1684
- };
1685
- };
1686
- readonly order: string;
1687
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1688
- readonly claimedAtMillis: number;
1689
- readonly claimExpiresAtMillis: number;
1690
- readonly nextTokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1691
- };
1692
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1693
- readonly settleRefresh: <A>(input: {
1694
- readonly claim: import("@yielded/auth/OAuth").OAuthConnectedRefreshClaim;
1695
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1696
- readonly outcome: import("@yielded/auth/OAuth").OAuthConnectedRefreshOutcome;
1697
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1698
- readonly _tag: "Rejected";
1699
- } | {
1700
- readonly _tag: "ReauthorizationRequired";
1701
- } | {
1702
- readonly _tag: "Refreshed";
1703
- readonly grant: {
1704
- readonly context: {
1705
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1706
- readonly exchangeOrder: string;
1707
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1708
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1709
- readonly identity: {
1710
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1711
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1712
- readonly subject: string;
1713
- };
1714
- readonly configuration: {
1715
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1716
- readonly protocol: "oauth" | "oidc";
1717
- readonly configurationGeneration: number;
1718
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1719
- readonly responseIssuerMode: "required" | "unsupported";
1720
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1721
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1722
- readonly profile: {
1723
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1724
- readonly generation: number;
1725
- readonly issuance: "active" | "retired";
1726
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1727
- readonly clientRegistrationId: string;
1728
- readonly scopes: readonly string[];
1729
- readonly resources: readonly string[];
1730
- readonly retention: "access-and-refresh" | "access-only";
1731
- readonly maximumAccessLifetimeMillis: number;
1732
- readonly maximumRefreshLifetimeMillis?: number;
1733
- readonly refreshAheadMillis: number;
1734
- readonly refresh: "confidential" | "rotating" | "unsupported";
1735
- readonly revocation: "cohort" | "unsupported";
1736
- };
1737
- };
1738
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1739
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1740
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1741
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1742
- readonly metadata: {
1743
- readonly scopes: readonly string[];
1744
- readonly resources: readonly string[];
1745
- readonly accessExpiresAtMillis?: number;
1746
- readonly refreshExpiresAtMillis?: number;
1747
- readonly useUntilMillis: number;
1748
- readonly refreshUseUntilMillis?: number;
1749
- readonly obtainedAtMillis: number;
1750
- readonly profile?: {
1751
- readonly displayName?: string;
1752
- readonly handle?: string;
1753
- readonly avatarUrl?: string;
1754
- readonly profileUrl?: string;
1755
- readonly email?: string;
1756
- readonly emailVerified?: boolean;
1757
- readonly providerData?: {
1758
- readonly [x: string]: import("effect/Schema").Json;
1759
- };
1760
- };
1761
- };
1762
- };
1763
- readonly sealed: {
1764
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1765
- readonly keyId: string;
1766
- readonly nonce: string;
1767
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1768
- };
1769
- };
1770
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1771
- readonly admitUse: <A>(input: {
1772
- readonly grant: import("@yielded/auth/OAuth").OAuthConnectedStoredGrant;
1773
- readonly authorization: import("@yielded/auth/OAuth").OAuthConnectedUseAuthorization;
1774
- readonly admissionId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1775
- readonly lifetimeMillis: number;
1776
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1777
- readonly _tag: "Rejected";
1778
- } | {
1779
- readonly _tag: "Busy";
1780
- } | {
1781
- readonly _tag: "ReauthorizationRequired";
1782
- } | {
1783
- readonly _tag: "Admitted";
1784
- readonly admissionId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1785
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1786
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1787
- readonly admittedAtMillis: number;
1788
- readonly expiresAtMillis: number;
1789
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1790
- readonly cleanup: <A>(input: import("@yielded/auth/OAuth").OAuthCleanupInput, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1791
- readonly terminalized: number;
1792
- readonly removed: number;
1793
- readonly hasMore: boolean;
1794
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable, never>;
1795
- };
1796
- }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthConnectedRevocationServices: <T extends AnySQLiteTable<{
1797
- dialect: "sqlite";
1798
- }>, O extends AnySQLiteTable<{
292
+ }> = never>(mapping: OAuthConnectedMapping<S, AC, O, F, G, N, J>) => Effect.Effect<{
293
+ readonly oauthConnectedPersistence: import("@yielded/auth/OAuth").OAuthConnectedPersistence["Service"];
294
+ }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeOAuthConnectedRevocationServices: <O extends AnySQLiteTable<{
1799
295
  dialect: "sqlite";
1800
296
  }>, F extends AnySQLiteTable<{
1801
297
  dialect: "sqlite";
1802
- }>, G extends AnySQLiteTable<{
1803
- dialect: "sqlite";
1804
- }>, C extends AnySQLiteTable<{
1805
- dialect: "sqlite";
1806
- }>, H extends AnySQLiteTable<{
1807
- dialect: "sqlite";
1808
298
  }>, J extends AnySQLiteTable<{
1809
299
  dialect: "sqlite";
1810
- }>, N>(mapping: OAuthConnectedRevocationMapping<T, O, F, G, C, H, J, N>) => Effect.Effect<{
1811
- oauthConnectedRevocations: {
1812
- readonly claim: <A>(input: {
1813
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1814
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1815
- readonly lifetimeMillis: number;
1816
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1817
- readonly _tag: "Claimed";
1818
- readonly claim: {
1819
- readonly job: {
1820
- readonly context: {
1821
- readonly namespace: "effect-auth/oauth-connected-revocation-context/v1";
1822
- readonly jobId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1823
- readonly token: {
1824
- readonly namespace: "effect-auth/oauth-connected-token-context/v1";
1825
- readonly exchangeOrder: string;
1826
- readonly moduleId: string & import("effect/Brand").Brand<"effect-auth/OAuthModuleId">;
1827
- readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
1828
- readonly identity: {
1829
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1830
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1831
- readonly subject: string;
1832
- };
1833
- readonly configuration: {
1834
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1835
- readonly protocol: "oauth" | "oidc";
1836
- readonly configurationGeneration: number;
1837
- readonly issuer: string & import("effect/Brand").Brand<"effect-auth/OAuthIssuer">;
1838
- readonly responseIssuerMode: "required" | "unsupported";
1839
- readonly callbackId: string & import("effect/Brand").Brand<"effect-auth/OAuthCallbackId">;
1840
- readonly redirectUri: string & import("effect/Brand").Brand<"effect-auth/OAuthRedirectUri">;
1841
- readonly profile: {
1842
- readonly key: string & import("effect/Brand").Brand<"effect-auth/OAuthPermissionProfileKey">;
1843
- readonly generation: number;
1844
- readonly issuance: "active" | "retired";
1845
- readonly provider: string & import("effect/Brand").Brand<"effect-auth/OAuthProviderKey">;
1846
- readonly clientRegistrationId: string;
1847
- readonly scopes: readonly string[];
1848
- readonly resources: readonly string[];
1849
- readonly retention: "access-and-refresh" | "access-only";
1850
- readonly maximumAccessLifetimeMillis: number;
1851
- readonly maximumRefreshLifetimeMillis?: number;
1852
- readonly refreshAheadMillis: number;
1853
- readonly refresh: "confidential" | "rotating" | "unsupported";
1854
- readonly revocation: "cohort" | "unsupported";
1855
- };
1856
- };
1857
- readonly grantId: string & import("effect/Brand").Brand<"effect-auth/OAuthGrantId">;
1858
- readonly grantVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1859
- readonly tokenVersion: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1860
- readonly cohortGeneration: string & import("effect/Brand").Brand<"effect-auth/SecurityRevision">;
1861
- readonly metadata: {
1862
- readonly scopes: readonly string[];
1863
- readonly resources: readonly string[];
1864
- readonly accessExpiresAtMillis?: number;
1865
- readonly refreshExpiresAtMillis?: number;
1866
- readonly useUntilMillis: number;
1867
- readonly refreshUseUntilMillis?: number;
1868
- readonly obtainedAtMillis: number;
1869
- readonly profile?: {
1870
- readonly displayName?: string;
1871
- readonly handle?: string;
1872
- readonly avatarUrl?: string;
1873
- readonly profileUrl?: string;
1874
- readonly email?: string;
1875
- readonly emailVerified?: boolean;
1876
- readonly providerData?: {
1877
- readonly [x: string]: import("effect/Schema").Json;
1878
- };
1879
- };
1880
- };
1881
- };
1882
- };
1883
- readonly sealed: {
1884
- readonly format: "oauth-connected-xchacha20poly1305-v1";
1885
- readonly keyId: string;
1886
- readonly nonce: string;
1887
- readonly ciphertext: import("effect/Redacted").Redacted<string>;
1888
- };
1889
- };
1890
- readonly claimId: string & import("effect/Brand").Brand<"effect-auth/OAuthClaimId">;
1891
- readonly claimedAtMillis: number;
1892
- readonly claimExpiresAtMillis: number;
1893
- };
1894
- } | {
1895
- readonly _tag: "Empty";
1896
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
1897
- readonly settle: <A>(input: {
1898
- readonly claim: import("@yielded/auth/OAuth").OAuthConnectedRevocationClaim;
1899
- readonly outcome: "Confirmed" | "Unknown";
1900
- }, prepare: import("@yielded/auth/OAuth").PrepareOAuthCommit<{
1901
- readonly settled: boolean;
1902
- }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/OAuth").OAuthUnavailable>;
1903
- };
1904
- }, import("@yielded/auth/OAuth").OAuthUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateOAuthConnected: {
300
+ }>, N>(mapping: OAuthConnectedRevocationMapping<O, F, J, N>) => Effect.Effect<{
301
+ readonly oauthConnectedRevocations: import("@yielded/auth/OAuth").OAuthConnectedRevocations["Service"];
302
+ }, import("@yielded/auth/OAuth").OAuthUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateOAuthConnected: {
1905
303
  <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
1906
304
  dialect: "sqlite";
1907
305
  }>, AC extends AnySQLiteTable<{
1908
306
  dialect: "sqlite";
1909
- }>, T extends AnySQLiteTable<{
1910
- dialect: "sqlite";
1911
307
  }>, O extends AnySQLiteTable<{
1912
308
  dialect: "sqlite";
1913
309
  }>, F extends AnySQLiteTable<{
1914
310
  dialect: "sqlite";
1915
311
  }>, G extends AnySQLiteTable<{
1916
312
  dialect: "sqlite";
1917
- }>, C extends AnySQLiteTable<{
1918
- dialect: "sqlite";
1919
- }>, H extends AnySQLiteTable<{
1920
- dialect: "sqlite";
1921
- }>, UA extends AnySQLiteTable<{
1922
- dialect: "sqlite";
1923
- }>, DC extends AnySQLiteTable<{
1924
- dialect: "sqlite";
1925
313
  }>, N, J extends AnySQLiteTable<{
1926
314
  dialect: "sqlite";
1927
315
  }>, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1928
- readonly mapping: OAuthConnectedMapping<S, AC, T, O, F, G, C, H, UA, DC, N, J>;
316
+ readonly mapping: OAuthConnectedMapping<S, AC, O, F, G, N, J>;
1929
317
  readonly transaction?: never;
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>>;
318
+ }, 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>>;
1931
319
  <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
1932
320
  dialect: "sqlite";
1933
321
  }>, AC extends AnySQLiteTable<{
1934
322
  dialect: "sqlite";
1935
- }>, T extends AnySQLiteTable<{
1936
- dialect: "sqlite";
1937
323
  }>, O extends AnySQLiteTable<{
1938
324
  dialect: "sqlite";
1939
325
  }>, F extends AnySQLiteTable<{
1940
326
  dialect: "sqlite";
1941
327
  }>, G extends AnySQLiteTable<{
1942
328
  dialect: "sqlite";
1943
- }>, C extends AnySQLiteTable<{
1944
- dialect: "sqlite";
1945
- }>, H extends AnySQLiteTable<{
1946
- dialect: "sqlite";
1947
- }>, UA extends AnySQLiteTable<{
1948
- dialect: "sqlite";
1949
- }>, DC extends AnySQLiteTable<{
1950
- dialect: "sqlite";
1951
329
  }>, N, J extends AnySQLiteTable<{
1952
330
  dialect: "sqlite";
1953
331
  }>, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1954
- readonly mapping: OAuthConnectedMapping<S, AC, T, O, F, G, C, H, UA, DC, N, J>;
332
+ readonly mapping: OAuthConnectedMapping<S, AC, O, F, G, N, J>;
1955
333
  readonly transaction: SuppliedService<TxId, NoInfer<D extends {
1956
334
  readonly transaction: (...args: any[]) => any;
1957
335
  } ? Parameters<Parameters<D["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
336
+ }, 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>>;
1959
337
  }, coordinateOAuthConnectedRevocations: {
1960
- <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, T extends AnySQLiteTable<{
1961
- dialect: "sqlite";
1962
- }>, O extends AnySQLiteTable<{
338
+ <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, O extends AnySQLiteTable<{
1963
339
  dialect: "sqlite";
1964
340
  }>, F extends AnySQLiteTable<{
1965
341
  dialect: "sqlite";
1966
- }>, G extends AnySQLiteTable<{
1967
- dialect: "sqlite";
1968
- }>, C extends AnySQLiteTable<{
1969
- dialect: "sqlite";
1970
- }>, H extends AnySQLiteTable<{
1971
- dialect: "sqlite";
1972
342
  }>, J extends AnySQLiteTable<{
1973
343
  dialect: "sqlite";
1974
344
  }>, N, A, E, R, DatabaseError, DatabaseRequirements>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1975
- readonly mapping: OAuthConnectedRevocationMapping<T, O, F, G, C, H, J, N>;
345
+ readonly mapping: OAuthConnectedRevocationMapping<O, F, J, N>;
1976
346
  readonly transaction?: never;
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>>;
1978
- <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, T extends AnySQLiteTable<{
1979
- dialect: "sqlite";
1980
- }>, O extends AnySQLiteTable<{
347
+ }, 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>>;
348
+ <D extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, O extends AnySQLiteTable<{
1981
349
  dialect: "sqlite";
1982
350
  }>, F extends AnySQLiteTable<{
1983
351
  dialect: "sqlite";
1984
- }>, G extends AnySQLiteTable<{
1985
- dialect: "sqlite";
1986
- }>, C extends AnySQLiteTable<{
1987
- dialect: "sqlite";
1988
- }>, H extends AnySQLiteTable<{
1989
- dialect: "sqlite";
1990
352
  }>, J extends AnySQLiteTable<{
1991
353
  dialect: "sqlite";
1992
354
  }>, N, A, E, R, DatabaseError, DatabaseRequirements, TxId, TxShape>(acquire: Effect.Effect<D, DatabaseError, DatabaseRequirements>, options: {
1993
- readonly mapping: OAuthConnectedRevocationMapping<T, O, F, G, C, H, J, N>;
355
+ readonly mapping: OAuthConnectedRevocationMapping<O, F, J, N>;
1994
356
  readonly transaction: SuppliedService<TxId, NoInfer<D extends {
1995
357
  readonly transaction: (...args: any[]) => any;
1996
358
  } ? Parameters<Parameters<D["transaction"]>[0]>[0] : never>, TxShape>;
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>>;
359
+ }, 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>>;
1998
360
  };
1999
361
  export declare const makePasskeyCredentialServices: <S extends AnySQLiteTable<{
2000
362
  dialect: "sqlite";
@@ -2002,225 +364,252 @@ export declare const makePasskeyCredentialServices: <S extends AnySQLiteTable<{
2002
364
  dialect: "sqlite";
2003
365
  }>, F extends AnySQLiteTable<{
2004
366
  dialect: "sqlite";
2005
- }>, O extends AnySQLiteTable<{
2006
- dialect: "sqlite";
2007
- }>, H extends AnySQLiteTable<{
2008
- dialect: "sqlite";
2009
- }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyCredentialMapping<S, C, F, O, H, N>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyCredentialServices, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | Exclude<RSetup, NativeDatabase>>, makePasskeyPersistenceServices: <S extends AnySQLiteTable<{
2010
- dialect: "sqlite";
2011
- }>, C extends AnySQLiteTable<{
2012
- dialect: "sqlite";
2013
- }>, F extends AnySQLiteTable<{
2014
- dialect: "sqlite";
2015
- }>, O extends AnySQLiteTable<{
2016
- dialect: "sqlite";
2017
- }>, H extends AnySQLiteTable<{
2018
- dialect: "sqlite";
2019
- }>, M extends AnySQLiteTable<{
2020
- dialect: "sqlite";
2021
- }>, Flow extends AnySQLiteTable<{
2022
- dialect: "sqlite";
2023
- }>, Admission extends AnySQLiteTable<{
2024
- dialect: "sqlite";
2025
- }>, Charge extends AnySQLiteTable<{
2026
- dialect: "sqlite";
2027
- }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, O, H, N>, M, Flow, Admission, Charge, N>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyPersistenceServices, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, makePasskeyEnrollmentContextServices: <S extends AnySQLiteTable<{
367
+ }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyCredentialMapping<S, C, F, N>, RSetup>) => Effect.Effect<{
368
+ passkeyCredentials: {
369
+ readonly listForSubject: (input: {
370
+ readonly moduleId: string;
371
+ readonly rpId: string;
372
+ readonly subjectId: import("@yielded/auth/Schema").SubjectId;
373
+ }) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyEnrollmentSnapshot | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
374
+ readonly lookup: (input: {
375
+ readonly rpId: string;
376
+ readonly protocolCredentialId: import("@yielded/auth/Passkey").PasskeyProtocolCredentialId;
377
+ }) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyCredential | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
378
+ };
379
+ }, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | Exclude<RSetup, NativeDatabase>>, makePasskeyPersistenceServices: <S extends AnySQLiteTable<{
2028
380
  dialect: "sqlite";
2029
381
  }>, C extends AnySQLiteTable<{
2030
382
  dialect: "sqlite";
2031
383
  }>, F extends AnySQLiteTable<{
2032
384
  dialect: "sqlite";
2033
- }>, O extends AnySQLiteTable<{
2034
- dialect: "sqlite";
2035
- }>, H extends AnySQLiteTable<{
2036
- dialect: "sqlite";
2037
- }>, M extends AnySQLiteTable<{
2038
- dialect: "sqlite";
2039
- }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyEnrollmentContextMapping<PasskeyCredentialMapping<S, C, F, O, H, N>, M, N>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyEnrollmentContextServices, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | Exclude<RSetup, NativeDatabase>>, makePasskeyRegistrationCeremonyServices: <M extends AnySQLiteTable<{
2040
- dialect: "sqlite";
2041
385
  }>, Flow extends AnySQLiteTable<{
2042
386
  dialect: "sqlite";
2043
- }>, Admission extends AnySQLiteTable<{
2044
- dialect: "sqlite";
2045
- }>, Charge extends AnySQLiteTable<{
2046
- dialect: "sqlite";
2047
- }>, Intent extends AnySQLiteTable<{
2048
- dialect: "sqlite";
2049
- }>, H extends AnySQLiteTable<{
387
+ }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, N>, Flow, N>, RSetup>) => Effect.Effect<{
388
+ passkeyPersistence: {
389
+ readonly issue: <A>(input: {
390
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
391
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyIssueDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
392
+ readonly context: (input: import("@yielded/auth/Passkey").PasskeyAccess) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyCeremony | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
393
+ readonly consume: <A>(input: {
394
+ readonly access: import("@yielded/auth/Passkey").PasskeyAccess;
395
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
396
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
397
+ readonly assertion: import("@yielded/auth/Passkey").PasskeyAssertionVerified;
398
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyConsumeDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
399
+ readonly cleanup: <A>(input: {
400
+ readonly moduleId: string;
401
+ readonly limit: import("@yielded/auth/Persistence").CleanupLimit;
402
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Persistence").CleanupResult, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
403
+ };
404
+ }, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, makePasskeyRegistrationCeremonyServices: <Flow extends AnySQLiteTable<{
2050
405
  dialect: "sqlite";
2051
- }>, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<M, Flow, Admission, Charge, Intent, H>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyRegistrationCeremonyServices, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinatePasskeyPersistence: {
406
+ }>, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<Flow>, RSetup>) => Effect.Effect<{
407
+ passkeyPersistence: {
408
+ readonly issue: <A>(input: {
409
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
410
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyIssueDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
411
+ readonly context: (input: import("@yielded/auth/Passkey").PasskeyAccess) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyCeremony | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
412
+ readonly consume: <A>(input: {
413
+ readonly access: import("@yielded/auth/Passkey").PasskeyAccess;
414
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
415
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
416
+ readonly assertion: import("@yielded/auth/Passkey").PasskeyAssertionVerified;
417
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyConsumeDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
418
+ readonly cleanup: <A>(input: {
419
+ readonly moduleId: string;
420
+ readonly limit: import("@yielded/auth/Persistence").CleanupLimit;
421
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Persistence").CleanupResult, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
422
+ };
423
+ capabilities: {
424
+ purposes: readonly ["registration"];
425
+ issue: "registration-authority";
426
+ assertionConsumption: false;
427
+ };
428
+ }, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinatePasskeyPersistence: {
2052
429
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2053
430
  dialect: "sqlite";
2054
431
  }>, C extends AnySQLiteTable<{
2055
432
  dialect: "sqlite";
2056
433
  }>, F extends AnySQLiteTable<{
2057
434
  dialect: "sqlite";
2058
- }>, O extends AnySQLiteTable<{
2059
- dialect: "sqlite";
2060
- }>, H extends AnySQLiteTable<{
2061
- dialect: "sqlite";
2062
- }>, M extends AnySQLiteTable<{
2063
- dialect: "sqlite";
2064
435
  }>, Flow extends AnySQLiteTable<{
2065
436
  dialect: "sqlite";
2066
- }>, Admission extends AnySQLiteTable<{
2067
- dialect: "sqlite";
2068
- }>, Charge extends AnySQLiteTable<{
2069
- dialect: "sqlite";
2070
437
  }>, N, A, E, R, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2071
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, O, H, N>, M, Flow, Admission, Charge, N>, RSetup>;
438
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, N>, Flow, N>, RSetup>;
2072
439
  readonly transaction?: never;
2073
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyPersistence>>;
440
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyPersistence>>;
2074
441
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2075
442
  dialect: "sqlite";
2076
443
  }>, C extends AnySQLiteTable<{
2077
444
  dialect: "sqlite";
2078
445
  }>, F extends AnySQLiteTable<{
2079
446
  dialect: "sqlite";
2080
- }>, O extends AnySQLiteTable<{
2081
- dialect: "sqlite";
2082
- }>, H extends AnySQLiteTable<{
2083
- dialect: "sqlite";
2084
- }>, M extends AnySQLiteTable<{
2085
- dialect: "sqlite";
2086
447
  }>, Flow extends AnySQLiteTable<{
2087
448
  dialect: "sqlite";
2088
- }>, Admission extends AnySQLiteTable<{
2089
- dialect: "sqlite";
2090
- }>, Charge extends AnySQLiteTable<{
2091
- dialect: "sqlite";
2092
449
  }>, N, A, E, R, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2093
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, O, H, N>, M, Flow, Admission, Charge, N>, RSetup>;
450
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyPersistenceMapping<PasskeyCredentialMapping<S, C, F, N>, Flow, N>, RSetup>;
2094
451
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2095
452
  readonly transaction: (...args: any[]) => any;
2096
453
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2097
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
454
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2098
455
  }, coordinatePasskeyRegistrationCeremony: {
2099
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, M extends AnySQLiteTable<{
2100
- dialect: "sqlite";
2101
- }>, Flow extends AnySQLiteTable<{
2102
- dialect: "sqlite";
2103
- }>, Admission extends AnySQLiteTable<{
2104
- dialect: "sqlite";
2105
- }>, Charge extends AnySQLiteTable<{
2106
- dialect: "sqlite";
2107
- }>, Intent extends AnySQLiteTable<{
2108
- dialect: "sqlite";
2109
- }>, H extends AnySQLiteTable<{
456
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Flow extends AnySQLiteTable<{
2110
457
  dialect: "sqlite";
2111
458
  }>, A, E, R, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2112
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<M, Flow, Admission, Charge, Intent, H>, RSetup>;
459
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<Flow>, RSetup>;
2113
460
  readonly transaction?: never;
2114
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyPersistence>>;
2115
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, M extends AnySQLiteTable<{
2116
- dialect: "sqlite";
2117
- }>, Flow extends AnySQLiteTable<{
2118
- dialect: "sqlite";
2119
- }>, Admission extends AnySQLiteTable<{
2120
- dialect: "sqlite";
2121
- }>, Charge extends AnySQLiteTable<{
2122
- dialect: "sqlite";
2123
- }>, Intent extends AnySQLiteTable<{
2124
- dialect: "sqlite";
2125
- }>, H extends AnySQLiteTable<{
461
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyPersistence>>;
462
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Flow extends AnySQLiteTable<{
2126
463
  dialect: "sqlite";
2127
464
  }>, A, E, R, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2128
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<M, Flow, Admission, Charge, Intent, H>, RSetup>;
465
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationCeremonyMapping<Flow>, RSetup>;
2129
466
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2130
467
  readonly transaction: (...args: any[]) => any;
2131
468
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2132
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
469
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2133
470
  }, makePasskeyManagementServices: <S extends AnySQLiteTable<{
2134
471
  dialect: "sqlite";
2135
472
  }>, C extends AnySQLiteTable<{
2136
473
  dialect: "sqlite";
2137
474
  }>, F extends AnySQLiteTable<{
2138
475
  dialect: "sqlite";
2139
- }>, O extends AnySQLiteTable<{
2140
- dialect: "sqlite";
2141
- }>, H extends AnySQLiteTable<{
2142
- dialect: "sqlite";
2143
- }>, M extends AnySQLiteTable<{
2144
- dialect: "sqlite";
2145
476
  }>, Flow extends AnySQLiteTable<{
2146
477
  dialect: "sqlite";
2147
- }>, Admission extends AnySQLiteTable<{
2148
- dialect: "sqlite";
2149
- }>, Charge extends AnySQLiteTable<{
2150
- dialect: "sqlite";
2151
- }>, Command extends AnySQLiteTable<{
2152
- dialect: "sqlite";
2153
- }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, O, H, M, Flow, Admission, Charge, Command, N>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyManagementServices, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, makePasskeyRegistrationServices: <S extends AnySQLiteTable<{
478
+ }>, N, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, Flow, N>, RSetup>) => Effect.Effect<{
479
+ passkeyManagementPersistence: {
480
+ readonly list: (input: {
481
+ readonly moduleId: string;
482
+ readonly subjectId: import("@yielded/auth/Schema").SubjectId;
483
+ readonly cursor?: string;
484
+ readonly limit: number;
485
+ }) => Effect.Effect<{
486
+ readonly credentials: ReadonlyArray<import("@yielded/auth/Passkey").PasskeyCredentialSummary>;
487
+ readonly cursor?: string;
488
+ }, import("@yielded/auth/Passkey").PasskeyUnavailable>;
489
+ readonly completeEnrollment: <A>(input: {
490
+ readonly access: import("@yielded/auth/Passkey").PasskeyAccess;
491
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
492
+ readonly verified: import("@yielded/auth/Passkey").PasskeyRegistrationVerified;
493
+ readonly management: import("@yielded/auth/Passkey").PasskeyManagementPolicy;
494
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<{
495
+ readonly _tag: "Enrolled";
496
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredentialSummary;
497
+ } | {
498
+ readonly _tag: "Rejected";
499
+ }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
500
+ readonly inspectRemove: (input: {
501
+ readonly moduleId: string;
502
+ readonly subjectId: import("@yielded/auth/Schema").SubjectId;
503
+ readonly credentialId: string;
504
+ }) => Effect.Effect<{
505
+ readonly _tag: "Target";
506
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
507
+ } | {
508
+ readonly _tag: "Rejected";
509
+ }, import("@yielded/auth/Passkey").PasskeyUnavailable>;
510
+ readonly remove: <A>(input: {
511
+ readonly moduleId: string;
512
+ readonly commandId: string;
513
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
514
+ readonly authorization: import("@yielded/auth/Passkey").PasskeyActionAuthorization;
515
+ readonly management: import("@yielded/auth/Passkey").PasskeyManagementPolicy;
516
+ readonly invalidation: import("@yielded/auth/Sessions").SessionInvalidationWindow;
517
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<{
518
+ readonly _tag: "Removed";
519
+ readonly result: {
520
+ readonly credentialId: string;
521
+ readonly invalidation: {
522
+ readonly trigger: "all-session-revocation" | "credential-change" | "factor-reset" | "identifier-change" | "password-reset" | "subject-delete" | "subject-disable";
523
+ readonly existingSessions: "cache-expiry" | "immediate" | "original-absolute-expiry";
524
+ readonly maximumExposureMillis: number;
525
+ readonly oldAuthenticationEvidence: "rejected";
526
+ };
527
+ };
528
+ } | {
529
+ readonly _tag: "Rejected" | "LastSignInMethod";
530
+ }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
531
+ readonly rename: <A>(input: {
532
+ readonly moduleId: string;
533
+ readonly subjectId: import("@yielded/auth/Schema").SubjectId;
534
+ readonly commandId: string;
535
+ readonly credentialId: string;
536
+ readonly name: string;
537
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<{
538
+ readonly _tag: "Renamed";
539
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredentialSummary;
540
+ } | {
541
+ readonly _tag: "Rejected";
542
+ }, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
543
+ };
544
+ passkeyPersistence: {
545
+ readonly issue: <A>(input: {
546
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
547
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyIssueDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
548
+ readonly context: (input: import("@yielded/auth/Passkey").PasskeyAccess) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyCeremony | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
549
+ readonly consume: <A>(input: {
550
+ readonly access: import("@yielded/auth/Passkey").PasskeyAccess;
551
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
552
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
553
+ readonly assertion: import("@yielded/auth/Passkey").PasskeyAssertionVerified;
554
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyConsumeDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
555
+ readonly cleanup: <A>(input: {
556
+ readonly moduleId: string;
557
+ readonly limit: import("@yielded/auth/Persistence").CleanupLimit;
558
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Persistence").CleanupResult, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
559
+ };
560
+ }, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, makePasskeyRegistrationServices: <S extends AnySQLiteTable<{
2154
561
  dialect: "sqlite";
2155
562
  }>, C extends AnySQLiteTable<{
2156
563
  dialect: "sqlite";
2157
564
  }>, F extends AnySQLiteTable<{
2158
565
  dialect: "sqlite";
2159
- }>, O extends AnySQLiteTable<{
2160
- dialect: "sqlite";
2161
- }>, H extends AnySQLiteTable<{
2162
- dialect: "sqlite";
2163
- }>, M extends AnySQLiteTable<{
2164
- dialect: "sqlite";
2165
566
  }>, Flow extends AnySQLiteTable<{
2166
567
  dialect: "sqlite";
2167
- }>, Admission extends AnySQLiteTable<{
2168
- dialect: "sqlite";
2169
- }>, Charge extends AnySQLiteTable<{
2170
- dialect: "sqlite";
2171
- }>, Intent extends AnySQLiteTable<{
2172
- dialect: "sqlite";
2173
- }>, N, Value, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, O, H, M, Flow, Admission, Charge, Intent, N, Value>, RSetup>) => Effect.Effect<import("@yielded/auth-persistence/Adapter").PasskeyRegistrationServices<Value>, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinatePasskeyManagement: {
568
+ }>, N, Value, RSetup = never>(mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, Flow, N, Value>, RSetup>) => Effect.Effect<{
569
+ passkeyRegistrationAuthority: import("@yielded/auth-persistence/Adapter").PasskeyRegistrationWriter<Value>;
570
+ passkeyPersistence: {
571
+ readonly issue: <A>(input: {
572
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
573
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyIssueDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
574
+ readonly context: (input: import("@yielded/auth/Passkey").PasskeyAccess) => Effect.Effect<import("@yielded/auth/Passkey").PasskeyCeremony | undefined, import("@yielded/auth/Passkey").PasskeyUnavailable>;
575
+ readonly consume: <A>(input: {
576
+ readonly access: import("@yielded/auth/Passkey").PasskeyAccess;
577
+ readonly ceremony: import("@yielded/auth/Passkey").PasskeyCeremony;
578
+ readonly credential: import("@yielded/auth/Passkey").PasskeyCredential;
579
+ readonly assertion: import("@yielded/auth/Passkey").PasskeyAssertionVerified;
580
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Passkey").PasskeyConsumeDecision, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
581
+ readonly cleanup: <A>(input: {
582
+ readonly moduleId: string;
583
+ readonly limit: import("@yielded/auth/Persistence").CleanupLimit;
584
+ }, prepare: import("@yielded/auth/Passkey").PreparePasskeyCommit<import("@yielded/auth/Persistence").CleanupResult, A>) => Effect.Effect<import("@yielded/auth/Hooks").PreparedCommit<A>, import("@yielded/auth/Passkey").PasskeyUnavailable>;
585
+ };
586
+ }, import("@yielded/auth/Passkey").PasskeyConfigurationError | import("@yielded/auth-persistence/Adapter").PersistenceMappingError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinatePasskeyManagement: {
2174
587
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2175
588
  dialect: "sqlite";
2176
589
  }>, C extends AnySQLiteTable<{
2177
590
  dialect: "sqlite";
2178
591
  }>, F extends AnySQLiteTable<{
2179
592
  dialect: "sqlite";
2180
- }>, O extends AnySQLiteTable<{
2181
- dialect: "sqlite";
2182
- }>, H extends AnySQLiteTable<{
2183
- dialect: "sqlite";
2184
- }>, M extends AnySQLiteTable<{
2185
- dialect: "sqlite";
2186
593
  }>, Flow extends AnySQLiteTable<{
2187
594
  dialect: "sqlite";
2188
- }>, Admission extends AnySQLiteTable<{
2189
- dialect: "sqlite";
2190
- }>, Charge extends AnySQLiteTable<{
2191
- dialect: "sqlite";
2192
- }>, Command extends AnySQLiteTable<{
2193
- dialect: "sqlite";
2194
595
  }>, N, A, E, R, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2195
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, O, H, M, Flow, Admission, Charge, Command, N>, RSetup>;
596
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, Flow, N>, RSetup>;
2196
597
  readonly transaction?: never;
2197
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyManagementPersistence | import("@yielded/auth/Passkey").PasskeyPersistence>>;
598
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Passkey").PasskeyManagementPersistence | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2198
599
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2199
600
  dialect: "sqlite";
2200
601
  }>, C extends AnySQLiteTable<{
2201
602
  dialect: "sqlite";
2202
603
  }>, F extends AnySQLiteTable<{
2203
604
  dialect: "sqlite";
2204
- }>, O extends AnySQLiteTable<{
2205
- dialect: "sqlite";
2206
- }>, H extends AnySQLiteTable<{
2207
- dialect: "sqlite";
2208
- }>, M extends AnySQLiteTable<{
2209
- dialect: "sqlite";
2210
605
  }>, Flow extends AnySQLiteTable<{
2211
606
  dialect: "sqlite";
2212
- }>, Admission extends AnySQLiteTable<{
2213
- dialect: "sqlite";
2214
- }>, Charge extends AnySQLiteTable<{
2215
- dialect: "sqlite";
2216
- }>, Command extends AnySQLiteTable<{
2217
- dialect: "sqlite";
2218
607
  }>, N, A, E, R, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2219
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, O, H, M, Flow, Admission, Charge, Command, N>, RSetup>;
608
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyManagementMapping<S, C, F, Flow, N>, RSetup>;
2220
609
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2221
610
  readonly transaction: (...args: any[]) => any;
2222
611
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2223
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyManagementPersistence | import("@yielded/auth/Passkey").PasskeyPersistence>>;
612
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Passkey").PasskeyManagementPersistence | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2224
613
  }, coordinatePasskeyRegistration: {
2225
614
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2226
615
  dialect: "sqlite";
@@ -2228,123 +617,127 @@ export declare const makePasskeyCredentialServices: <S extends AnySQLiteTable<{
2228
617
  dialect: "sqlite";
2229
618
  }>, F extends AnySQLiteTable<{
2230
619
  dialect: "sqlite";
2231
- }>, O extends AnySQLiteTable<{
2232
- dialect: "sqlite";
2233
- }>, H extends AnySQLiteTable<{
2234
- dialect: "sqlite";
2235
- }>, M extends AnySQLiteTable<{
2236
- dialect: "sqlite";
2237
620
  }>, Flow extends AnySQLiteTable<{
2238
621
  dialect: "sqlite";
2239
- }>, Admission extends AnySQLiteTable<{
2240
- dialect: "sqlite";
2241
- }>, Charge extends AnySQLiteTable<{
2242
- dialect: "sqlite";
2243
- }>, Intent extends AnySQLiteTable<{
2244
- dialect: "sqlite";
2245
622
  }>, N, Value, A, E, R, AuthorityId, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2246
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, O, H, M, Flow, Admission, Charge, Intent, N, Value>, RSetup>;
623
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, Flow, N, Value>, RSetup>;
2247
624
  readonly authority: Context.Key<AuthorityId, import("@yielded/auth-persistence/Adapter").PasskeyRegistrationWriter<Value>>;
2248
625
  readonly transaction?: never;
2249
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, AuthorityId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
626
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, AuthorityId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2250
627
  <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2251
628
  dialect: "sqlite";
2252
629
  }>, C extends AnySQLiteTable<{
2253
630
  dialect: "sqlite";
2254
631
  }>, F extends AnySQLiteTable<{
2255
632
  dialect: "sqlite";
2256
- }>, O extends AnySQLiteTable<{
2257
- dialect: "sqlite";
2258
- }>, H extends AnySQLiteTable<{
2259
- dialect: "sqlite";
2260
- }>, M extends AnySQLiteTable<{
2261
- dialect: "sqlite";
2262
633
  }>, Flow extends AnySQLiteTable<{
2263
634
  dialect: "sqlite";
2264
- }>, Admission extends AnySQLiteTable<{
2265
- dialect: "sqlite";
2266
- }>, Charge extends AnySQLiteTable<{
2267
- dialect: "sqlite";
2268
- }>, Intent extends AnySQLiteTable<{
2269
- dialect: "sqlite";
2270
635
  }>, N, Value, A, E, R, AuthorityId, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2271
- readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, O, H, M, Flow, Admission, Charge, Intent, N, Value>, RSetup>;
636
+ readonly mapping: import("@yielded/auth-persistence/Adapter").PasskeyMappingSource<PasskeyRegistrationMapping<S, C, F, Flow, N, Value>, RSetup>;
2272
637
  readonly authority: Context.Key<AuthorityId, import("@yielded/auth-persistence/Adapter").PasskeyRegistrationWriter<Value>>;
2273
638
  readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2274
639
  readonly transaction: (...args: any[]) => any;
2275
640
  } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2276
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | import("@yielded/auth-persistence/Adapter").PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, AuthorityId | TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2277
- };
2278
- export declare const makeTotpPersistenceServices: <S extends AnySQLiteTable<{
2279
- dialect: "sqlite";
2280
- }>, F extends AnySQLiteTable<{
2281
- dialect: "sqlite";
2282
- }>, C extends AnySQLiteTable<{
2283
- dialect: "sqlite";
2284
- }>, N, RSetup = never>(mapping: TotpMappingSource<TotpMapping<S, F, C, N>, RSetup>) => Effect.Effect<TotpPersistenceServices, import("@yielded/auth-persistence/Adapter").PersistenceMappingError | import("@yielded/auth/Totp").TotpConfigurationError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinateTotpPersistence: {
2285
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2286
- dialect: "sqlite";
2287
- }>, F extends AnySQLiteTable<{
2288
- dialect: "sqlite";
2289
- }>, C extends AnySQLiteTable<{
2290
- dialect: "sqlite";
2291
- }>, N, A, E, R, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2292
- readonly mapping: TotpMappingSource<TotpMapping<S, F, C, N>, RSetup>;
2293
- readonly transaction?: never;
2294
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | TotpCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Totp").TotpPersistence>>;
2295
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2296
- dialect: "sqlite";
2297
- }>, F extends AnySQLiteTable<{
2298
- dialect: "sqlite";
2299
- }>, C extends AnySQLiteTable<{
2300
- dialect: "sqlite";
2301
- }>, N, A, E, R, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2302
- readonly mapping: TotpMappingSource<TotpMapping<S, F, C, N>, RSetup>;
2303
- readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2304
- readonly transaction: (...args: any[]) => any;
2305
- } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2306
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | TotpCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Totp").TotpPersistence>>;
641
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PasskeyCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, AuthorityId | TxId | import("@yielded/auth/Passkey").PasskeyPersistence>>;
2307
642
  };
2308
- export declare const makePhonePersistenceServices: <S extends AnySQLiteTable<{
2309
- dialect: "sqlite";
2310
- }>, I extends AnySQLiteTable<{
2311
- dialect: "sqlite";
2312
- }>, F extends AnySQLiteTable<{
2313
- dialect: "sqlite";
2314
- }>, C extends AnySQLiteTable<{
2315
- dialect: "sqlite";
2316
- }>, N, RSetup = never>(mapping: PhoneMappingSource<PhoneMapping<S, I, C, F, N>, RSetup>) => Effect.Effect<PhonePersistenceServices, import("@yielded/auth-persistence/Adapter").PersistenceMappingError | import("@yielded/auth/PhoneOtp").PhoneConfigurationError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RSetup, NativeDatabase>>, coordinatePhonePersistence: {
2317
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2318
- dialect: "sqlite";
2319
- }>, I extends AnySQLiteTable<{
2320
- dialect: "sqlite";
2321
- }>, F extends AnySQLiteTable<{
2322
- dialect: "sqlite";
2323
- }>, C extends AnySQLiteTable<{
2324
- dialect: "sqlite";
2325
- }>, N, A, E, R, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2326
- readonly mapping: PhoneMappingSource<PhoneMapping<S, I, C, F, N>, RSetup>;
643
+ export declare const makePhonePersistenceServices: <Subject extends import("drizzle-orm").Table, Identifier extends import("drizzle-orm").Table, Credential extends import("drizzle-orm").Table, Proof extends import("drizzle-orm").Table, NativeId>(mapping: PhoneMapping<Subject, Identifier, Credential, Proof, NativeId>) => Effect.Effect<{
644
+ readonly phonePersistence: import("@yielded/auth/PhoneOtp").PhonePersistence["Service"];
645
+ readonly phoneSignInTargets: import("@yielded/auth/PhoneOtp").PhoneSignInTargets["Service"];
646
+ }, import("@yielded/auth/PhoneOtp").PhoneConfigurationError | import("@yielded/auth/PhoneOtp").PhoneOtpUnavailable, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinatePhonePersistence: {
647
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Subject extends import("drizzle-orm").Table, Identifier extends import("drizzle-orm").Table, Credential extends import("drizzle-orm").Table, Proof extends import("drizzle-orm").Table, NativeId, A, E, R, DE, DR>(acquire: Effect.Effect<Database, DE, DR>, options: {
648
+ readonly mapping: PhoneMapping<Subject, Identifier, Credential, Proof, NativeId>;
2327
649
  readonly transaction?: never;
2328
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PhoneCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/PhoneOtp").PhoneAdmission | import("@yielded/auth/PhoneOtp").PhonePersistence | import("@yielded/auth/PhoneOtp").PhoneSignInTargets>>;
2329
- <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends AnySQLiteTable<{
2330
- dialect: "sqlite";
2331
- }>, I extends AnySQLiteTable<{
2332
- dialect: "sqlite";
2333
- }>, F extends AnySQLiteTable<{
2334
- dialect: "sqlite";
2335
- }>, C extends AnySQLiteTable<{
2336
- dialect: "sqlite";
2337
- }>, N, A, E, R, TxId, TxShape, RSetup = never, DatabaseError = never, DatabaseRequirements = never>(acquire: Effect.Effect<Database, DatabaseError, DatabaseRequirements>, options: {
2338
- readonly mapping: PhoneMappingSource<PhoneMapping<S, I, C, F, N>, RSetup>;
2339
- readonly transaction: SuppliedService<TxId, NoInfer<Database extends {
2340
- readonly transaction: (...args: any[]) => any;
2341
- } ? Parameters<Parameters<Database["transaction"]>[0]>[0] : never>, TxShape>;
2342
- }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DatabaseError | PhoneCoordinatorError<E>, DatabaseRequirements | RSetup | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/PhoneOtp").PhoneAdmission | import("@yielded/auth/PhoneOtp").PhonePersistence | import("@yielded/auth/PhoneOtp").PhoneSignInTargets>>;
650
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/PhoneOtp").PhoneConfigurationError | import("@yielded/auth/PhoneOtp").PhoneOtpUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/PhoneOtp").PhonePersistence | import("@yielded/auth/PhoneOtp").PhoneSignInTargets>>;
651
+ <Database extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Subject extends import("drizzle-orm").Table, Identifier extends import("drizzle-orm").Table, Credential extends import("drizzle-orm").Table, Proof extends import("drizzle-orm").Table, NativeId, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<Database, DE, DR>, options: {
652
+ readonly mapping: PhoneMapping<Subject, Identifier, Credential, Proof, NativeId>;
653
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<Database>>, TxShape>;
654
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/PhoneOtp").PhoneConfigurationError | import("@yielded/auth/PhoneOtp").PhoneOtpUnavailable, DR | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/PhoneOtp").PhonePersistence | import("@yielded/auth/PhoneOtp").PhoneSignInTargets>>;
2343
655
  };
2344
656
  export declare const AuthPersistence: {
2345
657
  make: <C extends import("@yielded/auth-persistence/Adapter").ClaimsCodec, const Id extends string, const A extends import("@yielded/auth-persistence/Adapter").Definition<C, Id>>(auth: A & import("@yielded/auth-persistence/Adapter").Definition<C, Id>) => import("@yielded/auth-persistence/Adapter").BoundPersistence<import("drizzle-orm/sqlite-core").SQLiteTable<import("drizzle-orm/sqlite-core").TableConfig>, import("@effect/sql-sqlite-node/SqliteClient").SqliteClient, C, Id, A>;
2346
658
  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-node/SqliteClient").SqliteClient>;
2347
659
  };
660
+ export declare const coordinateAuthenticationAuthority: {
661
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, A, E, R, DE, DR>(acquire: Effect.Effect<DB, DE, DR>, options: {
662
+ readonly mapping: AuthenticationAuthorityMapping<Claims, S, C, P, N>;
663
+ readonly transaction?: never;
664
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, import("@yielded/auth/Sessions").AuthenticationAuthority>>;
665
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<DB, DE, DR>, options: {
666
+ readonly mapping: AuthenticationAuthorityMapping<Claims, S, C, P, N>;
667
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
668
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | import("@yielded/auth/Sessions").AuthenticationAuthority>>;
669
+ }, coordinatePendingAuthentication: {
670
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, A, E, R, DE, DR>(acquire: Effect.Effect<DB, DE, DR>, options: {
671
+ readonly mapping: PendingAuthenticationMapping<NoInfer<Claims>, S, C, P, N>;
672
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").PendingAuthentication<Claims>>;
673
+ readonly transaction?: never;
674
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id>>;
675
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<DB, DE, DR>, options: {
676
+ readonly mapping: PendingAuthenticationMapping<NoInfer<Claims>, S, C, P, N>;
677
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").PendingAuthentication<Claims>>;
678
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
679
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id | TxId>>;
680
+ }, coordinateSignedSessionValidity: {
681
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, S extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR>(acquire: Effect.Effect<DB, DE, DR>, options: {
682
+ readonly mapping: SignedSessionValidityMapping<S, T, N, NS>;
683
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SignedSessionValidity>;
684
+ readonly transaction?: never;
685
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id>>;
686
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, S extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<DB, DE, DR>, options: {
687
+ readonly mapping: SignedSessionValidityMapping<S, T, N, NS>;
688
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SignedSessionValidity>;
689
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
690
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id | TxId>>;
691
+ }, coordinateStatefulSessions: {
692
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, RepositoryId, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR>(acquire: Effect.Effect<DB, DE, DR>, options: {
693
+ readonly mapping: StatefulSessionMapping<NoInfer<Claims>, S, C, Session, P, N, NS>;
694
+ readonly persistence: SuppliedService<Id, import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>>;
695
+ readonly repository: SuppliedService<RepositoryId, import("@yielded/auth/Sessions").SessionRepository>;
696
+ readonly transaction?: never;
697
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id | RepositoryId>>;
698
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, RepositoryId, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<DB, DE, DR>, options: {
699
+ readonly mapping: StatefulSessionMapping<NoInfer<Claims>, S, C, Session, P, N, NS>;
700
+ readonly persistence: SuppliedService<Id, import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>>;
701
+ readonly repository: SuppliedService<RepositoryId, import("@yielded/auth/Sessions").SessionRepository>;
702
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
703
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id | RepositoryId | TxId>>;
704
+ }, makeAuthenticationAuthorityServices: <Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N>(mapping: AuthenticationAuthorityMapping<Claims, S, C, P, N>) => Effect.Effect<{
705
+ readonly authenticationAuthority: import("@yielded/auth/Sessions").AuthenticationAuthority["Service"];
706
+ }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makePendingAuthenticationServices: <Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N>(mapping: PendingAuthenticationMapping<Claims, S, C, P, N>) => Effect.Effect<{
707
+ readonly pendingAuthentication: import("@yielded/auth/Sessions").PendingAuthentication<Claims>;
708
+ }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeSignedSessionValidityServices: <S extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS>(mapping: SignedSessionValidityMapping<S, T, N, NS>) => Effect.Effect<{
709
+ readonly signedSessionValidity: import("@yielded/auth/Sessions").SignedSessionValidity;
710
+ }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeStatefulSessionServices: <Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, N, NS>(mapping: StatefulSessionMapping<Claims, S, C, Session, P, N, NS>) => Effect.Effect<{
711
+ readonly statefulSessionPersistence: import("@yielded/auth/Sessions").StatefulSessionPersistence<Claims>;
712
+ readonly sessionRepository: import("@yielded/auth/Sessions").SessionRepository;
713
+ }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, makeSessionStepUpServices: <Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS, Id>(mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, P, Session, T, N, NS>, target: Context.Service<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>) => Effect.Effect<{
714
+ sessionStepUpPersistence: import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>;
715
+ }, import("@yielded/auth/Sessions").SessionUnavailable, Database | import("@yielded/auth/Hooks").LifecycleHooks>, coordinateSessionStepUp: {
716
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR>(acquire: Effect.Effect<DB, DE, DR>, options: {
717
+ readonly mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, P, Session, T, N, NS>;
718
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>;
719
+ readonly transaction?: never;
720
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id>>;
721
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, Id, Claims, S extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, P extends import("drizzle-orm").Table, Session extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS, A, E, R, DE, DR, TxId, TxShape>(acquire: Effect.Effect<DB, DE, DR>, options: {
722
+ readonly mapping: SessionStepUpMapping<NoInfer<Claims>, S, C, P, Session, T, N, NS>;
723
+ readonly target: SuppliedService<Id, import("@yielded/auth/Sessions").SessionStepUpPersistence<Claims>>;
724
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
725
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth/Sessions").SessionUnavailable, DR | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, Id | TxId>>;
726
+ }, makeSessionCleanupServices: <P extends import("drizzle-orm").Table, T extends import("drizzle-orm").Table, N, NS>(mapping: SessionCleanupMapping<P, T, N, NS>) => Effect.Effect<{
727
+ readonly sessionCleanup: import("@yielded/auth/Sessions").SessionCleanup;
728
+ }, never, Database | import("@yielded/auth/Hooks").LifecycleHooks>;
729
+ export declare const makeTotpPersistenceServices: <S extends import("drizzle-orm").Table, F extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, N, P extends import("drizzle-orm").Table = import("drizzle-orm").Table<import("drizzle-orm").TableConfig<import("drizzle-orm").Columns>>, RS = never>(source: import("@yielded/auth-persistence/Adapter").TotpMappingSource<TotpMapping<S, F, C, N, P>, RS>) => Effect.Effect<{
730
+ readonly totpPersistence: import("@yielded/auth/Totp").TotpPersistence["Service"];
731
+ }, import("@yielded/auth-persistence/Adapter").PersistenceMappingError | import("@yielded/auth/Totp").TotpConfigurationError, import("effect/Crypto").Crypto | Database | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<RS, NativeDatabase>>, coordinateTotpPersistence: {
732
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, F extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, N, P extends import("drizzle-orm").Table, A, E, R, DE, DR, RS = never>(acquire: Effect.Effect<DB, DE, DR>, options: {
733
+ readonly mapping: import("@yielded/auth-persistence/Adapter").TotpMappingSource<TotpMapping<S, F, C, N, P>, RS>;
734
+ readonly transaction?: never;
735
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth-persistence/Adapter").PersistenceMappingError | import("@yielded/auth/Totp").TotpConfigurationError | import("@yielded/auth/Totp").TotpUnavailable, DR | RS | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, D1BatchStatements | import("@yielded/auth/Totp").TotpPersistence>>;
736
+ <DB extends EffectSQLiteNodeDatabase<import("drizzle-orm").TablesRelationalConfig>, S extends import("drizzle-orm").Table, F extends import("drizzle-orm").Table, C extends import("drizzle-orm").Table, N, P extends import("drizzle-orm").Table, A, E, R, DE, DR, TxId, TxShape, RS = never>(acquire: Effect.Effect<DB, DE, DR>, options: {
737
+ readonly mapping: import("@yielded/auth-persistence/Adapter").TotpMappingSource<TotpMapping<S, F, C, N, P>, RS>;
738
+ readonly transaction: SuppliedService<TxId, NoInfer<NativeDriverTransaction<DB>>, TxShape>;
739
+ }, body: Effect.Effect<A, E, R>): Effect.Effect<A, DE | E | import("@yielded/auth-persistence/Adapter").PersistenceMappingError | import("@yielded/auth/Totp").TotpConfigurationError | import("@yielded/auth/Totp").TotpUnavailable, DR | RS | import("effect/Crypto").Crypto | import("@yielded/auth/Hooks").LifecycleHooks | Exclude<R, TxId | D1BatchStatements | import("@yielded/auth/Totp").TotpPersistence>>;
740
+ };
2348
741
  //#endregion
2349
- export { OAuthProxyPersistence, passwordPreparedPersistenceLayer };
742
+ export { OAuthProxyPersistence };
2350
743
  //# sourceMappingURL=SqliteNode.d.mts.map