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