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

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