@yielded/auth 0.1.0-beta.1
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.
- package/LICENSE +21 -0
- package/README.md +18 -0
- package/dist/Atom.d.mts +5 -0
- package/dist/Atom.mjs +5 -0
- package/dist/Auth.d.mts +9 -0
- package/dist/Auth.mjs +7 -0
- package/dist/AuthContract.d.mts +4 -0
- package/dist/AuthContract.mjs +4 -0
- package/dist/AuthSession.d.mts +82 -0
- package/dist/AuthSession.mjs +138 -0
- package/dist/AuthSession.mjs.map +1 -0
- package/dist/AuthStore.d.mts +68 -0
- package/dist/AuthStore.mjs +194 -0
- package/dist/AuthStore.mjs.map +1 -0
- package/dist/AuthTokenCodec.d.mts +40 -0
- package/dist/AuthTokenCodec.mjs +104 -0
- package/dist/AuthTokenCodec.mjs.map +1 -0
- package/dist/Client.d.mts +2 -0
- package/dist/Client.mjs +2 -0
- package/dist/Cloudflare.d.mts +89 -0
- package/dist/Cloudflare.mjs +166 -0
- package/dist/Cloudflare.mjs.map +1 -0
- package/dist/Drizzle.d.mts +28 -0
- package/dist/Drizzle.mjs +27 -0
- package/dist/DrizzleD1.d.mts +935 -0
- package/dist/DrizzleD1.mjs +29 -0
- package/dist/DrizzleD1.mjs.map +1 -0
- package/dist/DrizzleLibsql.d.mts +2288 -0
- package/dist/DrizzleLibsql.mjs +85 -0
- package/dist/DrizzleLibsql.mjs.map +1 -0
- package/dist/DrizzleMysql2.d.mts +1809 -0
- package/dist/DrizzleMysql2.mjs +55 -0
- package/dist/DrizzleMysql2.mjs.map +1 -0
- package/dist/DrizzlePglite.d.mts +1808 -0
- package/dist/DrizzlePglite.mjs +45 -0
- package/dist/DrizzlePglite.mjs.map +1 -0
- package/dist/DrizzlePostgres.d.mts +1808 -0
- package/dist/DrizzlePostgres.mjs +45 -0
- package/dist/DrizzlePostgres.mjs.map +1 -0
- package/dist/DrizzleSqliteBun.d.mts +2287 -0
- package/dist/DrizzleSqliteBun.mjs +62 -0
- package/dist/DrizzleSqliteBun.mjs.map +1 -0
- package/dist/DrizzleSqliteDo.d.mts +2343 -0
- package/dist/DrizzleSqliteDo.mjs +105 -0
- package/dist/DrizzleSqliteDo.mjs.map +1 -0
- package/dist/DrizzleSqliteNode.d.mts +2287 -0
- package/dist/DrizzleSqliteNode.mjs +62 -0
- package/dist/DrizzleSqliteNode.mjs.map +1 -0
- package/dist/DrizzleSqliteWasm.d.mts +2287 -0
- package/dist/DrizzleSqliteWasm.mjs +62 -0
- package/dist/DrizzleSqliteWasm.mjs.map +1 -0
- package/dist/Email.d.mts +12 -0
- package/dist/Email.mjs +11 -0
- package/dist/EmailOtp.d.mts +42 -0
- package/dist/EmailOtp.mjs +120 -0
- package/dist/EmailOtp.mjs.map +1 -0
- package/dist/EmailOtpSender.d.mts +22 -0
- package/dist/EmailOtpSender.mjs +18 -0
- package/dist/EmailOtpSender.mjs.map +1 -0
- package/dist/Errors.d.mts +55 -0
- package/dist/Errors.mjs +31 -0
- package/dist/Errors.mjs.map +1 -0
- package/dist/GitHub.d.mts +5 -0
- package/dist/GitHub.mjs +4 -0
- package/dist/Hooks.d.mts +6 -0
- package/dist/Hooks.mjs +6 -0
- package/dist/Http.d.mts +12 -0
- package/dist/Http.mjs +12 -0
- package/dist/HttpServer.d.mts +103 -0
- package/dist/HttpServer.mjs +326 -0
- package/dist/HttpServer.mjs.map +1 -0
- package/dist/Identity.d.mts +9 -0
- package/dist/Identity.mjs +9 -0
- package/dist/IdentityResolver.d.mts +16 -0
- package/dist/IdentityResolver.mjs +12 -0
- package/dist/IdentityResolver.mjs.map +1 -0
- package/dist/OAuth.d.mts +36 -0
- package/dist/OAuth.mjs +35 -0
- package/dist/OpenIdClient.d.mts +3 -0
- package/dist/OpenIdClient.mjs +3 -0
- package/dist/OpenIdClientConnected.d.mts +4 -0
- package/dist/OpenIdClientConnected.mjs +3 -0
- package/dist/OperationHttp.d.mts +3 -0
- package/dist/OperationHttp.mjs +3 -0
- package/dist/OperationHttpClient.d.mts +2 -0
- package/dist/OperationHttpClient.mjs +2 -0
- package/dist/OperationHttpServer.d.mts +5 -0
- package/dist/OperationHttpServer.mjs +4 -0
- package/dist/Operations.d.mts +8 -0
- package/dist/Operations.mjs +8 -0
- package/dist/Passkey.d.mts +12 -0
- package/dist/Passkey.mjs +12 -0
- package/dist/PasskeyBrowser.d.mts +4 -0
- package/dist/PasskeyBrowser.mjs +4 -0
- package/dist/PasskeyContract.d.mts +641 -0
- package/dist/PasskeyContract.mjs +174 -0
- package/dist/PasskeyContract.mjs.map +1 -0
- package/dist/PasskeyPassword.d.mts +412 -0
- package/dist/PasskeyPassword.mjs +174 -0
- package/dist/PasskeyPassword.mjs.map +1 -0
- package/dist/PasskeySimpleWebAuthn.d.mts +3 -0
- package/dist/PasskeySimpleWebAuthn.mjs +3 -0
- package/dist/Password.d.mts +19 -0
- package/dist/Password.mjs +17 -0
- package/dist/PasswordAuth.d.mts +45 -0
- package/dist/PasswordAuth.mjs +79 -0
- package/dist/PasswordAuth.mjs.map +1 -0
- package/dist/PasswordCredentialStore.d.mts +46 -0
- package/dist/PasswordCredentialStore.mjs +62 -0
- package/dist/PasswordCredentialStore.mjs.map +1 -0
- package/dist/PasswordHasher.d.mts +31 -0
- package/dist/PasswordHasher.mjs +76 -0
- package/dist/PasswordHasher.mjs.map +1 -0
- package/dist/PhoneOtp.d.mts +11 -0
- package/dist/PhoneOtp.mjs +11 -0
- package/dist/Policy.d.mts +52 -0
- package/dist/Policy.mjs +36 -0
- package/dist/Policy.mjs.map +1 -0
- package/dist/Proofs.d.mts +14 -0
- package/dist/Proofs.mjs +13 -0
- package/dist/Rpc.d.mts +12 -0
- package/dist/Rpc.mjs +11 -0
- package/dist/Rpc.mjs.map +1 -0
- package/dist/Schema.d.mts +160 -0
- package/dist/Schema.mjs +141 -0
- package/dist/Schema.mjs.map +1 -0
- package/dist/SessionContract.d.mts +3 -0
- package/dist/SessionContract.mjs +3 -0
- package/dist/Sessions.d.mts +14 -0
- package/dist/Sessions.mjs +12 -0
- package/dist/Testing.d.mts +7 -0
- package/dist/Testing.mjs +7 -0
- package/dist/Totp.d.mts +8 -0
- package/dist/Totp.mjs +8 -0
- package/dist/TotpContract.d.mts +318 -0
- package/dist/TotpContract.mjs +119 -0
- package/dist/TotpContract.mjs.map +1 -0
- package/dist/WebCrypto.d.mts +28 -0
- package/dist/WebCrypto.mjs +42 -0
- package/dist/WebCrypto.mjs.map +1 -0
- package/dist/Workflows.d.mts +16 -0
- package/dist/Workflows.mjs +11 -0
- package/dist/Workflows.mjs.map +1 -0
- package/dist/atom/AuthAtomLifetime.d.mts +35 -0
- package/dist/atom/AuthAtomLifetime.mjs +50 -0
- package/dist/atom/AuthAtomLifetime.mjs.map +1 -0
- package/dist/atom/AuthAtomWorkflow.d.mts +17 -0
- package/dist/atom/AuthAtomWorkflow.mjs +9 -0
- package/dist/atom/AuthAtomWorkflow.mjs.map +1 -0
- package/dist/atom/client.d.mts +43 -0
- package/dist/atom/client.mjs +168 -0
- package/dist/atom/client.mjs.map +1 -0
- package/dist/atom/operations.d.mts +35 -0
- package/dist/atom/operations.mjs +58 -0
- package/dist/atom/operations.mjs.map +1 -0
- package/dist/atom/scoped-runtime.mjs +151 -0
- package/dist/atom/scoped-runtime.mjs.map +1 -0
- package/dist/auth/Auth.d.mts +7806 -0
- package/dist/auth/Auth.mjs +141 -0
- package/dist/auth/Auth.mjs.map +1 -0
- package/dist/auth/AuthConfigurationError.d.mts +10 -0
- package/dist/auth/AuthConfigurationError.mjs +14 -0
- package/dist/auth/AuthConfigurationError.mjs.map +1 -0
- package/dist/auth/AuthRequest.d.mts +21 -0
- package/dist/auth/AuthRequest.mjs +10 -0
- package/dist/auth/AuthRequest.mjs.map +1 -0
- package/dist/auth/AuthStrategy.d.mts +23 -0
- package/dist/auth/AuthStrategy.mjs +33 -0
- package/dist/auth/AuthStrategy.mjs.map +1 -0
- package/dist/auth/ConsumeDecision.d.mts +11 -0
- package/dist/auth/actions.d.mts +18 -0
- package/dist/auth/actions.mjs +70 -0
- package/dist/auth/actions.mjs.map +1 -0
- package/dist/auth/defaults.mjs +12 -0
- package/dist/auth/defaults.mjs.map +1 -0
- package/dist/auth/definition.d.mts +46 -0
- package/dist/auth/session.d.mts +27 -0
- package/dist/auth/session.mjs +56 -0
- package/dist/auth/session.mjs.map +1 -0
- package/dist/drizzle/D1BatchStatements.d.mts +11 -0
- package/dist/drizzle/D1BatchStatements.mjs +8 -0
- package/dist/drizzle/D1BatchStatements.mjs.map +1 -0
- package/dist/drizzle/PasswordPreparedPostconditions.mjs +12 -0
- package/dist/drizzle/PasswordPreparedPostconditions.mjs.map +1 -0
- package/dist/drizzle/SuppliedService.d.mts +10 -0
- package/dist/drizzle/d1-emails.d.mts +68 -0
- package/dist/drizzle/d1-emails.mjs +580 -0
- package/dist/drizzle/d1-emails.mjs.map +1 -0
- package/dist/drizzle/d1-generated-statement.mjs +79 -0
- package/dist/drizzle/d1-generated-statement.mjs.map +1 -0
- package/dist/drizzle/d1-identity.d.mts +33 -0
- package/dist/drizzle/d1-identity.mjs +120 -0
- package/dist/drizzle/d1-identity.mjs.map +1 -0
- package/dist/drizzle/d1-oauth.d.mts +316 -0
- package/dist/drizzle/d1-oauth.mjs +79 -0
- package/dist/drizzle/d1-oauth.mjs.map +1 -0
- package/dist/drizzle/d1-passkey.d.mts +52 -0
- package/dist/drizzle/d1-passkey.mjs +97 -0
- package/dist/drizzle/d1-passkey.mjs.map +1 -0
- package/dist/drizzle/d1-password-prepared.d.mts +27 -0
- package/dist/drizzle/d1-password-prepared.mjs +464 -0
- package/dist/drizzle/d1-password-prepared.mjs.map +1 -0
- package/dist/drizzle/d1-passwords.d.mts +96 -0
- package/dist/drizzle/d1-passwords.mjs +1008 -0
- package/dist/drizzle/d1-passwords.mjs.map +1 -0
- package/dist/drizzle/d1-phone.d.mts +29 -0
- package/dist/drizzle/d1-phone.mjs +33 -0
- package/dist/drizzle/d1-phone.mjs.map +1 -0
- package/dist/drizzle/d1-planning.d.mts +12 -0
- package/dist/drizzle/d1-planning.mjs +43 -0
- package/dist/drizzle/d1-planning.mjs.map +1 -0
- package/dist/drizzle/d1-proofs.d.mts +88 -0
- package/dist/drizzle/d1-proofs.mjs +833 -0
- package/dist/drizzle/d1-proofs.mjs.map +1 -0
- package/dist/drizzle/d1-sessions.d.mts +77 -0
- package/dist/drizzle/d1-sessions.mjs +970 -0
- package/dist/drizzle/d1-sessions.mjs.map +1 -0
- package/dist/drizzle/d1-totp.d.mts +27 -0
- package/dist/drizzle/d1-totp.mjs +28 -0
- package/dist/drizzle/d1-totp.mjs.map +1 -0
- package/dist/drizzle/email-model.d.mts +352 -0
- package/dist/drizzle/email-model.mjs +21 -0
- package/dist/drizzle/email-model.mjs.map +1 -0
- package/dist/drizzle/email-registration.d.mts +33 -0
- package/dist/drizzle/email-registration.mjs +238 -0
- package/dist/drizzle/email-registration.mjs.map +1 -0
- package/dist/drizzle/email-sql.d.mts +18 -0
- package/dist/drizzle/email-sql.mjs +473 -0
- package/dist/drizzle/email-sql.mjs.map +1 -0
- package/dist/drizzle/email-target.d.mts +28 -0
- package/dist/drizzle/email-target.mjs +75 -0
- package/dist/drizzle/email-target.mjs.map +1 -0
- package/dist/drizzle/model.d.mts +259 -0
- package/dist/drizzle/model.mjs +81 -0
- package/dist/drizzle/model.mjs.map +1 -0
- package/dist/drizzle/mysql-emails.d.mts +82 -0
- package/dist/drizzle/mysql-emails.mjs +38 -0
- package/dist/drizzle/mysql-emails.mjs.map +1 -0
- package/dist/drizzle/mysql-identity.d.mts +24 -0
- package/dist/drizzle/mysql-identity.mjs +95 -0
- package/dist/drizzle/mysql-identity.mjs.map +1 -0
- package/dist/drizzle/mysql-password-prepared.d.mts +32 -0
- package/dist/drizzle/mysql-password-prepared.mjs +16 -0
- package/dist/drizzle/mysql-password-prepared.mjs.map +1 -0
- package/dist/drizzle/mysql-passwords.d.mts +102 -0
- package/dist/drizzle/mysql-passwords.mjs +38 -0
- package/dist/drizzle/mysql-passwords.mjs.map +1 -0
- package/dist/drizzle/mysql-proofs.d.mts +83 -0
- package/dist/drizzle/mysql-proofs.mjs +23 -0
- package/dist/drizzle/mysql-proofs.mjs.map +1 -0
- package/dist/drizzle/mysql-sessions.d.mts +250 -0
- package/dist/drizzle/mysql-sessions.mjs +53 -0
- package/dist/drizzle/mysql-sessions.mjs.map +1 -0
- package/dist/drizzle/mysql.d.mts +73 -0
- package/dist/drizzle/mysql.mjs +221 -0
- package/dist/drizzle/mysql.mjs.map +1 -0
- package/dist/drizzle/oauth-accounts.mjs +361 -0
- package/dist/drizzle/oauth-accounts.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-access.mjs +210 -0
- package/dist/drizzle/oauth-connected-access.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-collection.mjs +202 -0
- package/dist/drizzle/oauth-connected-collection.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-custody.mjs +146 -0
- package/dist/drizzle/oauth-connected-custody.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-drivers.mjs +78 -0
- package/dist/drizzle/oauth-connected-drivers.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-flow.mjs +248 -0
- package/dist/drizzle/oauth-connected-flow.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-input.mjs +105 -0
- package/dist/drizzle/oauth-connected-input.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-maintenance.mjs +215 -0
- package/dist/drizzle/oauth-connected-maintenance.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-management.mjs +228 -0
- package/dist/drizzle/oauth-connected-management.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-model.d.mts +278 -0
- package/dist/drizzle/oauth-connected-model.mjs +22 -0
- package/dist/drizzle/oauth-connected-model.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-reference.d.mts +17 -0
- package/dist/drizzle/oauth-connected-reference.mjs +53 -0
- package/dist/drizzle/oauth-connected-reference.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-settlement.mjs +117 -0
- package/dist/drizzle/oauth-connected-settlement.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-state.d.mts +16 -0
- package/dist/drizzle/oauth-connected-state.mjs +422 -0
- package/dist/drizzle/oauth-connected-state.mjs.map +1 -0
- package/dist/drizzle/oauth-connected-target.d.mts +114 -0
- package/dist/drizzle/oauth-connected-target.mjs +94 -0
- package/dist/drizzle/oauth-connected-target.mjs.map +1 -0
- package/dist/drizzle/oauth-drivers.mjs +53 -0
- package/dist/drizzle/oauth-drivers.mjs.map +1 -0
- package/dist/drizzle/oauth-flow.d.mts +7 -0
- package/dist/drizzle/oauth-flow.mjs +255 -0
- package/dist/drizzle/oauth-flow.mjs.map +1 -0
- package/dist/drizzle/oauth-input.mjs +130 -0
- package/dist/drizzle/oauth-input.mjs.map +1 -0
- package/dist/drizzle/oauth-model.d.mts +468 -0
- package/dist/drizzle/oauth-model.mjs +49 -0
- package/dist/drizzle/oauth-model.mjs.map +1 -0
- package/dist/drizzle/oauth-mysql.mjs +8 -0
- package/dist/drizzle/oauth-mysql.mjs.map +1 -0
- package/dist/drizzle/oauth-owner.d.mts +4 -0
- package/dist/drizzle/oauth-owner.mjs +10 -0
- package/dist/drizzle/oauth-owner.mjs.map +1 -0
- package/dist/drizzle/oauth-registration.d.mts +8 -0
- package/dist/drizzle/oauth-registration.mjs +375 -0
- package/dist/drizzle/oauth-registration.mjs.map +1 -0
- package/dist/drizzle/oauth-state.mjs +109 -0
- package/dist/drizzle/oauth-state.mjs.map +1 -0
- package/dist/drizzle/oauth-target.d.mts +125 -0
- package/dist/drizzle/oauth-target.mjs +252 -0
- package/dist/drizzle/oauth-target.mjs.map +1 -0
- package/dist/drizzle/passkey-admission.mjs +203 -0
- package/dist/drizzle/passkey-admission.mjs.map +1 -0
- package/dist/drizzle/passkey-credentials.mjs +239 -0
- package/dist/drizzle/passkey-credentials.mjs.map +1 -0
- package/dist/drizzle/passkey-drivers.mjs +34 -0
- package/dist/drizzle/passkey-drivers.mjs.map +1 -0
- package/dist/drizzle/passkey-enrollment.mjs +132 -0
- package/dist/drizzle/passkey-enrollment.mjs.map +1 -0
- package/dist/drizzle/passkey-flow.mjs +436 -0
- package/dist/drizzle/passkey-flow.mjs.map +1 -0
- package/dist/drizzle/passkey-management.mjs +225 -0
- package/dist/drizzle/passkey-management.mjs.map +1 -0
- package/dist/drizzle/passkey-model.d.mts +275 -0
- package/dist/drizzle/passkey-model.mjs +36 -0
- package/dist/drizzle/passkey-model.mjs.map +1 -0
- package/dist/drizzle/passkey-registration-ceremony-model.d.mts +50 -0
- package/dist/drizzle/passkey-registration-ceremony-model.mjs +18 -0
- package/dist/drizzle/passkey-registration-ceremony-model.mjs.map +1 -0
- package/dist/drizzle/passkey-registration-ceremony.mjs +124 -0
- package/dist/drizzle/passkey-registration-ceremony.mjs.map +1 -0
- package/dist/drizzle/passkey-registration-custody.mjs +51 -0
- package/dist/drizzle/passkey-registration-custody.mjs.map +1 -0
- package/dist/drizzle/passkey-registration-write.mjs +205 -0
- package/dist/drizzle/passkey-registration-write.mjs.map +1 -0
- package/dist/drizzle/passkey-state.d.mts +5 -0
- package/dist/drizzle/passkey-state.mjs +207 -0
- package/dist/drizzle/passkey-state.mjs.map +1 -0
- package/dist/drizzle/passkey-target.d.mts +16 -0
- package/dist/drizzle/passkey-target.mjs +174 -0
- package/dist/drizzle/passkey-target.mjs.map +1 -0
- package/dist/drizzle/passkey-write-drivers.mjs +33 -0
- package/dist/drizzle/passkey-write-drivers.mjs.map +1 -0
- package/dist/drizzle/passkey-write-model.d.mts +192 -0
- package/dist/drizzle/passkey-write-model.mjs +13 -0
- package/dist/drizzle/passkey-write-model.mjs.map +1 -0
- package/dist/drizzle/passkey-write-state.mjs +326 -0
- package/dist/drizzle/passkey-write-state.mjs.map +1 -0
- package/dist/drizzle/passkey-write-target.d.mts +14 -0
- package/dist/drizzle/passkey-write-target.mjs +185 -0
- package/dist/drizzle/passkey-write-target.mjs.map +1 -0
- package/dist/drizzle/password-model.d.mts +330 -0
- package/dist/drizzle/password-model.mjs +22 -0
- package/dist/drizzle/password-model.mjs.map +1 -0
- package/dist/drizzle/password-prepared-model.d.mts +93 -0
- package/dist/drizzle/password-prepared-model.mjs +11 -0
- package/dist/drizzle/password-prepared-model.mjs.map +1 -0
- package/dist/drizzle/password-prepared-sql.mjs +394 -0
- package/dist/drizzle/password-prepared-sql.mjs.map +1 -0
- package/dist/drizzle/password-prepared-state.mjs +107 -0
- package/dist/drizzle/password-prepared-state.mjs.map +1 -0
- package/dist/drizzle/password-prepared-target.d.mts +12 -0
- package/dist/drizzle/password-prepared-target.mjs +57 -0
- package/dist/drizzle/password-prepared-target.mjs.map +1 -0
- package/dist/drizzle/password-registration.d.mts +23 -0
- package/dist/drizzle/password-registration.mjs +136 -0
- package/dist/drizzle/password-registration.mjs.map +1 -0
- package/dist/drizzle/password-sql.d.mts +20 -0
- package/dist/drizzle/password-sql.mjs +702 -0
- package/dist/drizzle/password-sql.mjs.map +1 -0
- package/dist/drizzle/password-target.d.mts +25 -0
- package/dist/drizzle/password-target.mjs +63 -0
- package/dist/drizzle/password-target.mjs.map +1 -0
- package/dist/drizzle/pg-emails.d.mts +83 -0
- package/dist/drizzle/pg-emails.mjs +38 -0
- package/dist/drizzle/pg-emails.mjs.map +1 -0
- package/dist/drizzle/pg-password-prepared.d.mts +33 -0
- package/dist/drizzle/pg-password-prepared.mjs +16 -0
- package/dist/drizzle/pg-password-prepared.mjs.map +1 -0
- package/dist/drizzle/pg-passwords.d.mts +103 -0
- package/dist/drizzle/pg-passwords.mjs +38 -0
- package/dist/drizzle/pg-passwords.mjs.map +1 -0
- package/dist/drizzle/pg-proofs.d.mts +84 -0
- package/dist/drizzle/pg-proofs.mjs +22 -0
- package/dist/drizzle/pg-proofs.mjs.map +1 -0
- package/dist/drizzle/pg-sessions.d.mts +251 -0
- package/dist/drizzle/pg-sessions.mjs +53 -0
- package/dist/drizzle/pg-sessions.mjs.map +1 -0
- package/dist/drizzle/pg.d.mts +88 -0
- package/dist/drizzle/pg.mjs +294 -0
- package/dist/drizzle/pg.mjs.map +1 -0
- package/dist/drizzle/phone-model.d.mts +117 -0
- package/dist/drizzle/phone-model.mjs +39 -0
- package/dist/drizzle/phone-model.mjs.map +1 -0
- package/dist/drizzle/phone-state.mjs +426 -0
- package/dist/drizzle/phone-state.mjs.map +1 -0
- package/dist/drizzle/phone-target.d.mts +19 -0
- package/dist/drizzle/phone-target.mjs +171 -0
- package/dist/drizzle/phone-target.mjs.map +1 -0
- package/dist/drizzle/proof-model.d.mts +287 -0
- package/dist/drizzle/proof-model.mjs +17 -0
- package/dist/drizzle/proof-model.mjs.map +1 -0
- package/dist/drizzle/proof-sql.d.mts +16 -0
- package/dist/drizzle/proof-sql.mjs +618 -0
- package/dist/drizzle/proof-sql.mjs.map +1 -0
- package/dist/drizzle/proof-target.d.mts +17 -0
- package/dist/drizzle/proof-target.mjs +38 -0
- package/dist/drizzle/proof-target.mjs.map +1 -0
- package/dist/drizzle/session-model.d.mts +201 -0
- package/dist/drizzle/session-model.mjs +19 -0
- package/dist/drizzle/session-model.mjs.map +1 -0
- package/dist/drizzle/session-sql.mjs +732 -0
- package/dist/drizzle/session-sql.mjs.map +1 -0
- package/dist/drizzle/session-target.d.mts +37 -0
- package/dist/drizzle/session-target.mjs +47 -0
- package/dist/drizzle/session-target.mjs.map +1 -0
- package/dist/drizzle/sqlite-emails.mjs +45 -0
- package/dist/drizzle/sqlite-emails.mjs.map +1 -0
- package/dist/drizzle/sqlite-identity.mjs +92 -0
- package/dist/drizzle/sqlite-identity.mjs.map +1 -0
- package/dist/drizzle/sqlite-password-prepared.mjs +21 -0
- package/dist/drizzle/sqlite-password-prepared.mjs.map +1 -0
- package/dist/drizzle/sqlite-passwords.mjs +49 -0
- package/dist/drizzle/sqlite-passwords.mjs.map +1 -0
- package/dist/drizzle/sqlite-proofs.mjs +29 -0
- package/dist/drizzle/sqlite-proofs.mjs.map +1 -0
- package/dist/drizzle/sqlite-sessions.mjs +74 -0
- package/dist/drizzle/sqlite-sessions.mjs.map +1 -0
- package/dist/drizzle/sqlite.d.mts +81 -0
- package/dist/drizzle/sqlite.mjs +220 -0
- package/dist/drizzle/sqlite.mjs.map +1 -0
- package/dist/drizzle/standalone-guard.mjs +19 -0
- package/dist/drizzle/standalone-guard.mjs.map +1 -0
- package/dist/drizzle/step-up-model.d.mts +65 -0
- package/dist/drizzle/step-up-model.mjs +9 -0
- package/dist/drizzle/step-up-model.mjs.map +1 -0
- package/dist/drizzle/step-up-state.mjs +34 -0
- package/dist/drizzle/step-up-state.mjs.map +1 -0
- package/dist/drizzle/totp-model.d.mts +85 -0
- package/dist/drizzle/totp-model.mjs +13 -0
- package/dist/drizzle/totp-model.mjs.map +1 -0
- package/dist/drizzle/totp-state.d.mts +39 -0
- package/dist/drizzle/totp-state.mjs +288 -0
- package/dist/drizzle/totp-state.mjs.map +1 -0
- package/dist/drizzle/totp-target.d.mts +16 -0
- package/dist/drizzle/totp-target.mjs +83 -0
- package/dist/drizzle/totp-target.mjs.map +1 -0
- package/dist/drizzle/transaction-execution.d.mts +20 -0
- package/dist/drizzle/transaction-execution.mjs +111 -0
- package/dist/drizzle/transaction-execution.mjs.map +1 -0
- package/dist/drizzle/transaction-mysql.mjs +46 -0
- package/dist/drizzle/transaction-mysql.mjs.map +1 -0
- package/dist/drizzle/transaction-owner.d.mts +6 -0
- package/dist/drizzle/transaction-owner.mjs +252 -0
- package/dist/drizzle/transaction-owner.mjs.map +1 -0
- package/dist/email/EmailActionEvidence.d.mts +33 -0
- package/dist/email/EmailActionEvidence.mjs +15 -0
- package/dist/email/EmailActionEvidence.mjs.map +1 -0
- package/dist/email/EmailAddressPersistence.d.mts +63 -0
- package/dist/email/EmailAddressPersistence.mjs +19 -0
- package/dist/email/EmailAddressPersistence.mjs.map +1 -0
- package/dist/email/EmailIdentifierNotifier.d.mts +30 -0
- package/dist/email/EmailIdentifierNotifier.mjs +31 -0
- package/dist/email/EmailIdentifierNotifier.mjs.map +1 -0
- package/dist/email/EmailReturnTargets.d.mts +19 -0
- package/dist/email/EmailReturnTargets.mjs +29 -0
- package/dist/email/EmailReturnTargets.mjs.map +1 -0
- package/dist/email/EmailSignInTargets.d.mts +20 -0
- package/dist/email/EmailSignInTargets.mjs +12 -0
- package/dist/email/EmailSignInTargets.mjs.map +1 -0
- package/dist/email/addresses.d.mts +33 -0
- package/dist/email/addresses.mjs +404 -0
- package/dist/email/addresses.mjs.map +1 -0
- package/dist/email/definition.d.mts +10153 -0
- package/dist/email/definition.mjs +111 -0
- package/dist/email/definition.mjs.map +1 -0
- package/dist/email/errors.d.mts +15 -0
- package/dist/email/errors.mjs +11 -0
- package/dist/email/errors.mjs.map +1 -0
- package/dist/email/magicLink.d.mts +33 -0
- package/dist/email/magicLink.mjs +58 -0
- package/dist/email/magicLink.mjs.map +1 -0
- package/dist/email/models.d.mts +56 -0
- package/dist/email/models.mjs +31 -0
- package/dist/email/models.mjs.map +1 -0
- package/dist/email/module.d.mts +22296 -0
- package/dist/email/module.mjs +415 -0
- package/dist/email/module.mjs.map +1 -0
- package/dist/email/registration.d.mts +28 -0
- package/dist/email/registration.mjs +243 -0
- package/dist/email/registration.mjs.map +1 -0
- package/dist/email/snapshot.mjs +37 -0
- package/dist/email/snapshot.mjs.map +1 -0
- package/dist/hooks/LifecycleHooks.d.mts +34 -0
- package/dist/hooks/LifecycleHooks.mjs +74 -0
- package/dist/hooks/LifecycleHooks.mjs.map +1 -0
- package/dist/hooks/commit.d.mts +66 -0
- package/dist/hooks/commit.mjs +136 -0
- package/dist/hooks/commit.mjs.map +1 -0
- package/dist/hooks/models.d.mts +51 -0
- package/dist/hooks/models.mjs +87 -0
- package/dist/hooks/models.mjs.map +1 -0
- package/dist/hooks/plugins.d.mts +36 -0
- package/dist/hooks/plugins.mjs +60 -0
- package/dist/hooks/plugins.mjs.map +1 -0
- package/dist/hooks/transactions.d.mts +31 -0
- package/dist/hooks/transactions.mjs +38 -0
- package/dist/hooks/transactions.mjs.map +1 -0
- package/dist/http/auth-api.d.mts +9 -0
- package/dist/http/auth-api.mjs +13 -0
- package/dist/http/auth-api.mjs.map +1 -0
- package/dist/http/auth-contract.d.mts +84 -0
- package/dist/http/auth-contract.mjs +75 -0
- package/dist/http/auth-contract.mjs.map +1 -0
- package/dist/http/auth-http.d.mts +216 -0
- package/dist/http/auth-http.mjs +184 -0
- package/dist/http/auth-http.mjs.map +1 -0
- package/dist/http/endpoints/get-session.d.mts +8 -0
- package/dist/http/endpoints/get-session.mjs +12 -0
- package/dist/http/endpoints/get-session.mjs.map +1 -0
- package/dist/http/endpoints/password-sign-in.d.mts +8 -0
- package/dist/http/endpoints/password-sign-in.mjs +18 -0
- package/dist/http/endpoints/password-sign-in.mjs.map +1 -0
- package/dist/http/endpoints/request-email-otp.d.mts +8 -0
- package/dist/http/endpoints/request-email-otp.mjs +17 -0
- package/dist/http/endpoints/request-email-otp.mjs.map +1 -0
- package/dist/http/endpoints/set-password.d.mts +9 -0
- package/dist/http/endpoints/set-password.mjs +19 -0
- package/dist/http/endpoints/set-password.mjs.map +1 -0
- package/dist/http/endpoints/sign-out.d.mts +6 -0
- package/dist/http/endpoints/sign-out.mjs +7 -0
- package/dist/http/endpoints/sign-out.mjs.map +1 -0
- package/dist/http/endpoints/verify-email-otp.d.mts +9 -0
- package/dist/http/endpoints/verify-email-otp.mjs +18 -0
- package/dist/http/endpoints/verify-email-otp.mjs.map +1 -0
- package/dist/http/models.d.mts +49 -0
- package/dist/http/models.mjs +35 -0
- package/dist/http/models.mjs.map +1 -0
- package/dist/http/security.d.mts +91 -0
- package/dist/http/security.mjs +77 -0
- package/dist/http/security.mjs.map +1 -0
- package/dist/http/session-contract.d.mts +303 -0
- package/dist/http/session-contract.mjs +38 -0
- package/dist/http/session-contract.mjs.map +1 -0
- package/dist/http-operation/OperationHttpInvocation.d.mts +16 -0
- package/dist/http-operation/OperationHttpInvocation.mjs +11 -0
- package/dist/http-operation/OperationHttpInvocation.mjs.map +1 -0
- package/dist/http-operation/OperationHttpServerConfig.d.mts +18 -0
- package/dist/http-operation/OperationHttpServerConfig.mjs +72 -0
- package/dist/http-operation/OperationHttpServerConfig.mjs.map +1 -0
- package/dist/http-operation/auth-client.d.mts +75 -0
- package/dist/http-operation/auth-client.mjs +116 -0
- package/dist/http-operation/auth-client.mjs.map +1 -0
- package/dist/http-operation/client.d.mts +50 -0
- package/dist/http-operation/client.mjs +188 -0
- package/dist/http-operation/client.mjs.map +1 -0
- package/dist/http-operation/configuration-schema.mjs +19 -0
- package/dist/http-operation/configuration-schema.mjs.map +1 -0
- package/dist/http-operation/contract.d.mts +40 -0
- package/dist/http-operation/contract.mjs +37 -0
- package/dist/http-operation/contract.mjs.map +1 -0
- package/dist/http-operation/errors.d.mts +13 -0
- package/dist/http-operation/errors.mjs +31 -0
- package/dist/http-operation/errors.mjs.map +1 -0
- package/dist/http-operation/models.d.mts +32 -0
- package/dist/http-operation/models.mjs +14 -0
- package/dist/http-operation/models.mjs.map +1 -0
- package/dist/http-operation/private.mjs +35 -0
- package/dist/http-operation/private.mjs.map +1 -0
- package/dist/http-operation/security.mjs +58 -0
- package/dist/http-operation/security.mjs.map +1 -0
- package/dist/http-operation/server.d.mts +33 -0
- package/dist/http-operation/server.mjs +268 -0
- package/dist/http-operation/server.mjs.map +1 -0
- package/dist/identity/ExternalIdentityMutation.d.mts +15 -0
- package/dist/identity/ExternalIdentityMutation.mjs +11 -0
- package/dist/identity/ExternalIdentityMutation.mjs.map +1 -0
- package/dist/identity/IdentityMutation.d.mts +22 -0
- package/dist/identity/IdentityMutation.mjs +17 -0
- package/dist/identity/IdentityMutation.mjs.map +1 -0
- package/dist/identity/IdentityRepository.d.mts +20 -0
- package/dist/identity/IdentityRepository.mjs +11 -0
- package/dist/identity/IdentityRepository.mjs.map +1 -0
- package/dist/identity/SubjectLifecycle.d.mts +58 -0
- package/dist/identity/SubjectLifecycle.mjs +43 -0
- package/dist/identity/SubjectLifecycle.mjs.map +1 -0
- package/dist/identity/SubjectProvisioner.d.mts +37 -0
- package/dist/identity/SubjectProvisioner.mjs +20 -0
- package/dist/identity/SubjectProvisioner.mjs.map +1 -0
- package/dist/identity/codecs.d.mts +34 -0
- package/dist/identity/codecs.mjs +40 -0
- package/dist/identity/codecs.mjs.map +1 -0
- package/dist/identity/models.d.mts +62 -0
- package/dist/identity/models.mjs +51 -0
- package/dist/identity/models.mjs.map +1 -0
- package/dist/identity/operations.d.mts +118 -0
- package/dist/identity/operations.mjs +124 -0
- package/dist/identity/operations.mjs.map +1 -0
- package/dist/index.d.mts +23 -0
- package/dist/index.mjs +23 -0
- package/dist/internal/AuthStoreDecisions.d.mts +22 -0
- package/dist/internal/AuthStoreDecisions.mjs +8 -0
- package/dist/internal/AuthStoreDecisions.mjs.map +1 -0
- package/dist/internal/CurrentSession.d.mts +9 -0
- package/dist/internal/CurrentSession.mjs +8 -0
- package/dist/internal/CurrentSession.mjs.map +1 -0
- package/dist/internal/diagnostics.mjs +23 -0
- package/dist/internal/diagnostics.mjs.map +1 -0
- package/dist/oauth/GithubOAuthProvider.d.mts +43 -0
- package/dist/oauth/GithubOAuthProvider.mjs +66 -0
- package/dist/oauth/GithubOAuthProvider.mjs.map +1 -0
- package/dist/oauth/OAuth.d.mts +73 -0
- package/dist/oauth/OAuth.mjs +180 -0
- package/dist/oauth/OAuth.mjs.map +1 -0
- package/dist/oauth/OAuthAccountsPersistence.d.mts +109 -0
- package/dist/oauth/OAuthAccountsPersistence.mjs +12 -0
- package/dist/oauth/OAuthAccountsPersistence.mjs.map +1 -0
- package/dist/oauth/OAuthActionEvidence.d.mts +28 -0
- package/dist/oauth/OAuthActionEvidence.mjs +15 -0
- package/dist/oauth/OAuthActionEvidence.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedActionEvidence.d.mts +22 -0
- package/dist/oauth/OAuthConnectedActionEvidence.mjs +9 -0
- package/dist/oauth/OAuthConnectedActionEvidence.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedPersistence.d.mts +129 -0
- package/dist/oauth/OAuthConnectedPersistence.mjs +12 -0
- package/dist/oauth/OAuthConnectedPersistence.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedProtocol.d.mts +41 -0
- package/dist/oauth/OAuthConnectedProtocol.mjs +13 -0
- package/dist/oauth/OAuthConnectedProtocol.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedRevocations.d.mts +167 -0
- package/dist/oauth/OAuthConnectedRevocations.mjs +21 -0
- package/dist/oauth/OAuthConnectedRevocations.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedTokenProtector.d.mts +24 -0
- package/dist/oauth/OAuthConnectedTokenProtector.mjs +153 -0
- package/dist/oauth/OAuthConnectedTokenProtector.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedTransactionProtector.d.mts +23 -0
- package/dist/oauth/OAuthConnectedTransactionProtector.mjs +37 -0
- package/dist/oauth/OAuthConnectedTransactionProtector.mjs.map +1 -0
- package/dist/oauth/OAuthConnectedUseAuthority.d.mts +22 -0
- package/dist/oauth/OAuthConnectedUseAuthority.mjs +10 -0
- package/dist/oauth/OAuthConnectedUseAuthority.mjs.map +1 -0
- package/dist/oauth/OAuthConnectionStore.d.mts +33 -0
- package/dist/oauth/OAuthConnectionStore.mjs +38 -0
- package/dist/oauth/OAuthConnectionStore.mjs.map +1 -0
- package/dist/oauth/OAuthLinkTransactionProtector.d.mts +25 -0
- package/dist/oauth/OAuthLinkTransactionProtector.mjs +39 -0
- package/dist/oauth/OAuthLinkTransactionProtector.mjs.map +1 -0
- package/dist/oauth/OAuthProtocol.d.mts +33 -0
- package/dist/oauth/OAuthProtocol.mjs +16 -0
- package/dist/oauth/OAuthProtocol.mjs.map +1 -0
- package/dist/oauth/OAuthProvider.d.mts +70 -0
- package/dist/oauth/OAuthProvider.mjs +39 -0
- package/dist/oauth/OAuthProvider.mjs.map +1 -0
- package/dist/oauth/OAuthProviders.d.mts +27 -0
- package/dist/oauth/OAuthProviders.mjs +33 -0
- package/dist/oauth/OAuthProviders.mjs.map +1 -0
- package/dist/oauth/OAuthRegistrationIntents.d.mts +87 -0
- package/dist/oauth/OAuthRegistrationIntents.mjs +19 -0
- package/dist/oauth/OAuthRegistrationIntents.mjs.map +1 -0
- package/dist/oauth/OAuthReturnTargets.d.mts +15 -0
- package/dist/oauth/OAuthReturnTargets.mjs +24 -0
- package/dist/oauth/OAuthReturnTargets.mjs.map +1 -0
- package/dist/oauth/OAuthSignInPersistence.d.mts +68 -0
- package/dist/oauth/OAuthSignInPersistence.mjs +12 -0
- package/dist/oauth/OAuthSignInPersistence.mjs.map +1 -0
- package/dist/oauth/OAuthStateDecisions.d.mts +14 -0
- package/dist/oauth/OAuthStateDecisions.mjs +8 -0
- package/dist/oauth/OAuthStateDecisions.mjs.map +1 -0
- package/dist/oauth/OAuthStateStore.d.mts +35 -0
- package/dist/oauth/OAuthStateStore.mjs +64 -0
- package/dist/oauth/OAuthStateStore.mjs.map +1 -0
- package/dist/oauth/OAuthTransactionProtector.d.mts +26 -0
- package/dist/oauth/OAuthTransactionProtector.mjs +78 -0
- package/dist/oauth/OAuthTransactionProtector.mjs.map +1 -0
- package/dist/oauth/accounts.d.mts +29 -0
- package/dist/oauth/accounts.mjs +515 -0
- package/dist/oauth/accounts.mjs.map +1 -0
- package/dist/oauth/accountsModels.d.mts +463 -0
- package/dist/oauth/accountsModels.mjs +155 -0
- package/dist/oauth/accountsModels.mjs.map +1 -0
- package/dist/oauth/connected.d.mts +442 -0
- package/dist/oauth/connected.mjs +526 -0
- package/dist/oauth/connected.mjs.map +1 -0
- package/dist/oauth/connectedAccess.d.mts +20 -0
- package/dist/oauth/connectedAccess.mjs +279 -0
- package/dist/oauth/connectedAccess.mjs.map +1 -0
- package/dist/oauth/connectedMaintenance.d.mts +19 -0
- package/dist/oauth/connectedMaintenance.mjs +133 -0
- package/dist/oauth/connectedMaintenance.mjs.map +1 -0
- package/dist/oauth/connectedModels.d.mts +2023 -0
- package/dist/oauth/connectedModels.mjs +375 -0
- package/dist/oauth/connectedModels.mjs.map +1 -0
- package/dist/oauth/definition.d.mts +4396 -0
- package/dist/oauth/definition.mjs +120 -0
- package/dist/oauth/definition.mjs.map +1 -0
- package/dist/oauth/errors.d.mts +49 -0
- package/dist/oauth/errors.mjs +42 -0
- package/dist/oauth/errors.mjs.map +1 -0
- package/dist/oauth/github/identity.d.mts +8 -0
- package/dist/oauth/github/identity.mjs +24 -0
- package/dist/oauth/github/identity.mjs.map +1 -0
- package/dist/oauth/github/models.d.mts +34 -0
- package/dist/oauth/github/protocol.d.mts +54 -0
- package/dist/oauth/github/protocol.mjs +204 -0
- package/dist/oauth/github/protocol.mjs.map +1 -0
- package/dist/oauth/openid-client/ProviderRevocation.d.mts +4 -0
- package/dist/oauth/openid-client/ProviderRevocation.mjs +11 -0
- package/dist/oauth/openid-client/ProviderRevocation.mjs.map +1 -0
- package/dist/oauth/openid-client/compatibility.d.mts +1 -0
- package/dist/oauth/openid-client/compatibility.mjs +6 -0
- package/dist/oauth/openid-client/compatibility.mjs.map +1 -0
- package/dist/oauth/openid-client/configuration.mjs +305 -0
- package/dist/oauth/openid-client/configuration.mjs.map +1 -0
- package/dist/oauth/openid-client/connected/configuration.mjs +338 -0
- package/dist/oauth/openid-client/connected/configuration.mjs.map +1 -0
- package/dist/oauth/openid-client/connected/models.d.mts +42 -0
- package/dist/oauth/openid-client/connected/protocol.d.mts +16 -0
- package/dist/oauth/openid-client/connected/protocol.mjs +402 -0
- package/dist/oauth/openid-client/connected/protocol.mjs.map +1 -0
- package/dist/oauth/openid-client/models.d.mts +67 -0
- package/dist/oauth/openid-client/models.mjs +16 -0
- package/dist/oauth/openid-client/models.mjs.map +1 -0
- package/dist/oauth/openid-client/protocol.d.mts +27 -0
- package/dist/oauth/openid-client/protocol.mjs +218 -0
- package/dist/oauth/openid-client/protocol.mjs.map +1 -0
- package/dist/oauth/openid-client/transport.mjs +59 -0
- package/dist/oauth/openid-client/transport.mjs.map +1 -0
- package/dist/oauth/policy.d.mts +18 -0
- package/dist/oauth/policy.mjs +16 -0
- package/dist/oauth/policy.mjs.map +1 -0
- package/dist/oauth/registration.d.mts +24 -0
- package/dist/oauth/registration.mjs +177 -0
- package/dist/oauth/registration.mjs.map +1 -0
- package/dist/oauth/registrationModels.d.mts +152 -0
- package/dist/oauth/registrationModels.mjs +93 -0
- package/dist/oauth/registrationModels.mjs.map +1 -0
- package/dist/oauth/registrationSecrets.mjs +70 -0
- package/dist/oauth/registrationSecrets.mjs.map +1 -0
- package/dist/oauth/schema.d.mts +86 -0
- package/dist/oauth/schema.mjs +81 -0
- package/dist/oauth/schema.mjs.map +1 -0
- package/dist/oauth/signInErrors.d.mts +17 -0
- package/dist/oauth/signInErrors.mjs +16 -0
- package/dist/oauth/signInErrors.mjs.map +1 -0
- package/dist/oauth/signInModels.d.mts +343 -0
- package/dist/oauth/signInModels.mjs +181 -0
- package/dist/oauth/signInModels.mjs.map +1 -0
- package/dist/oauth/signInModule.d.mts +1546 -0
- package/dist/oauth/signInModule.mjs +430 -0
- package/dist/oauth/signInModule.mjs.map +1 -0
- package/dist/oauth/signInSnapshot.mjs +29 -0
- package/dist/oauth/signInSnapshot.mjs.map +1 -0
- package/dist/oauth/transactionEncryption.d.mts +14 -0
- package/dist/oauth/transactionEncryption.mjs +129 -0
- package/dist/oauth/transactionEncryption.mjs.map +1 -0
- package/dist/operations/RequestBindingConfig.d.mts +11 -0
- package/dist/operations/RequestBindingConfig.mjs +10 -0
- package/dist/operations/RequestBindingConfig.mjs.map +1 -0
- package/dist/operations/actions.d.mts +947 -0
- package/dist/operations/actions.mjs +148 -0
- package/dist/operations/actions.mjs.map +1 -0
- package/dist/operations/context.d.mts +63 -0
- package/dist/operations/context.mjs +55 -0
- package/dist/operations/context.mjs.map +1 -0
- package/dist/operations/credentials.d.mts +39 -0
- package/dist/operations/credentials.mjs +60 -0
- package/dist/operations/credentials.mjs.map +1 -0
- package/dist/operations/errors.d.mts +24 -0
- package/dist/operations/errors.mjs +31 -0
- package/dist/operations/errors.mjs.map +1 -0
- package/dist/operations/operation.d.mts +124 -0
- package/dist/operations/operation.mjs +220 -0
- package/dist/operations/operation.mjs.map +1 -0
- package/dist/operations/requestBinding.d.mts +46 -0
- package/dist/operations/requestBinding.mjs +130 -0
- package/dist/operations/requestBinding.mjs.map +1 -0
- package/dist/operations/requestBindingModels.d.mts +13 -0
- package/dist/operations/requestBindingModels.mjs +12 -0
- package/dist/operations/requestBindingModels.mjs.map +1 -0
- package/dist/operations/reveals.d.mts +28 -0
- package/dist/operations/reveals.mjs +88 -0
- package/dist/operations/reveals.mjs.map +1 -0
- package/dist/passkey/PasskeyActionEvidence.d.mts +22 -0
- package/dist/passkey/PasskeyActionEvidence.mjs +9 -0
- package/dist/passkey/PasskeyActionEvidence.mjs.map +1 -0
- package/dist/passkey/PasskeyCredentials.d.mts +16 -0
- package/dist/passkey/PasskeyCredentials.mjs +9 -0
- package/dist/passkey/PasskeyCredentials.mjs.map +1 -0
- package/dist/passkey/PasskeyEnrollmentContext.d.mts +22 -0
- package/dist/passkey/PasskeyEnrollmentContext.mjs +9 -0
- package/dist/passkey/PasskeyEnrollmentContext.mjs.map +1 -0
- package/dist/passkey/PasskeyManagementPersistence.d.mts +106 -0
- package/dist/passkey/PasskeyManagementPersistence.mjs +9 -0
- package/dist/passkey/PasskeyManagementPersistence.mjs.map +1 -0
- package/dist/passkey/PasskeyPersistence.d.mts +63 -0
- package/dist/passkey/PasskeyPersistence.mjs +10 -0
- package/dist/passkey/PasskeyPersistence.mjs.map +1 -0
- package/dist/passkey/PasskeyProtocol.d.mts +38 -0
- package/dist/passkey/PasskeyProtocol.mjs +11 -0
- package/dist/passkey/PasskeyProtocol.mjs.map +1 -0
- package/dist/passkey/actions.d.mts +50 -0
- package/dist/passkey/actions.mjs +376 -0
- package/dist/passkey/actions.mjs.map +1 -0
- package/dist/passkey/browser/PasskeyBrowser.d.mts +18 -0
- package/dist/passkey/browser/PasskeyBrowser.mjs +9 -0
- package/dist/passkey/browser/PasskeyBrowser.mjs.map +1 -0
- package/dist/passkey/browser/models.d.mts +38 -0
- package/dist/passkey/browser/models.mjs +41 -0
- package/dist/passkey/browser/models.mjs.map +1 -0
- package/dist/passkey/browser/simplewebauthn.d.mts +17 -0
- package/dist/passkey/browser/simplewebauthn.mjs +411 -0
- package/dist/passkey/browser/simplewebauthn.mjs.map +1 -0
- package/dist/passkey/definition.d.mts +5626 -0
- package/dist/passkey/definition.mjs +114 -0
- package/dist/passkey/definition.mjs.map +1 -0
- package/dist/passkey/errors.d.mts +20 -0
- package/dist/passkey/errors.mjs +20 -0
- package/dist/passkey/errors.mjs.map +1 -0
- package/dist/passkey/management.mjs +276 -0
- package/dist/passkey/management.mjs.map +1 -0
- package/dist/passkey/models.d.mts +1245 -0
- package/dist/passkey/models.mjs +301 -0
- package/dist/passkey/models.mjs.map +1 -0
- package/dist/passkey/module.d.mts +2132 -0
- package/dist/passkey/module.mjs +174 -0
- package/dist/passkey/module.mjs.map +1 -0
- package/dist/passkey/pending.mjs +99 -0
- package/dist/passkey/pending.mjs.map +1 -0
- package/dist/passkey/policy.d.mts +48 -0
- package/dist/passkey/policy.mjs +77 -0
- package/dist/passkey/policy.mjs.map +1 -0
- package/dist/passkey/registration.mjs +107 -0
- package/dist/passkey/registration.mjs.map +1 -0
- package/dist/passkey/simplewebauthn/configuration.mjs +45 -0
- package/dist/passkey/simplewebauthn/configuration.mjs.map +1 -0
- package/dist/passkey/simplewebauthn/models.d.mts +21 -0
- package/dist/passkey/simplewebauthn/models.mjs +8 -0
- package/dist/passkey/simplewebauthn/models.mjs.map +1 -0
- package/dist/passkey/simplewebauthn/protocol.d.mts +62 -0
- package/dist/passkey/simplewebauthn/protocol.mjs +402 -0
- package/dist/passkey/simplewebauthn/protocol.mjs.map +1 -0
- package/dist/passkey/snapshot.mjs +31 -0
- package/dist/passkey/snapshot.mjs.map +1 -0
- package/dist/passkey/stepUp.mjs +101 -0
- package/dist/passkey/stepUp.mjs.map +1 -0
- package/dist/password/CompromisedPasswords.d.mts +26 -0
- package/dist/password/CompromisedPasswords.mjs +23 -0
- package/dist/password/CompromisedPasswords.mjs.map +1 -0
- package/dist/password/NewPasswordCheck.d.mts +21 -0
- package/dist/password/NewPasswordCheck.mjs +39 -0
- package/dist/password/NewPasswordCheck.mjs.map +1 -0
- package/dist/password/PasswordHashing.d.mts +24 -0
- package/dist/password/PasswordHashing.mjs +96 -0
- package/dist/password/PasswordHashing.mjs.map +1 -0
- package/dist/password/PasswordKdfAdmission.d.mts +19 -0
- package/dist/password/PasswordKdfAdmission.mjs +25 -0
- package/dist/password/PasswordKdfAdmission.mjs.map +1 -0
- package/dist/password/configuration.d.mts +43 -0
- package/dist/password/configuration.mjs +64 -0
- package/dist/password/configuration.mjs.map +1 -0
- package/dist/password/defaults.mjs +13 -0
- package/dist/password/defaults.mjs.map +1 -0
- package/dist/password/encoding.mjs +64 -0
- package/dist/password/encoding.mjs.map +1 -0
- package/dist/password/errors.d.mts +28 -0
- package/dist/password/errors.mjs +25 -0
- package/dist/password/errors.mjs.map +1 -0
- package/dist/password/methods/PasswordActionEvidence.d.mts +38 -0
- package/dist/password/methods/PasswordActionEvidence.mjs +22 -0
- package/dist/password/methods/PasswordActionEvidence.mjs.map +1 -0
- package/dist/password/methods/PasswordPersistence.d.mts +102 -0
- package/dist/password/methods/PasswordPersistence.mjs +13 -0
- package/dist/password/methods/PasswordPersistence.mjs.map +1 -0
- package/dist/password/methods/PasswordPreparedPersistence.d.mts +111 -0
- package/dist/password/methods/contracts.d.mts +43 -0
- package/dist/password/methods/contracts.mjs +33 -0
- package/dist/password/methods/contracts.mjs.map +1 -0
- package/dist/password/methods/definition.d.mts +3813 -0
- package/dist/password/methods/definition.mjs +56 -0
- package/dist/password/methods/definition.mjs.map +1 -0
- package/dist/password/methods/errors.d.mts +15 -0
- package/dist/password/methods/errors.mjs +11 -0
- package/dist/password/methods/errors.mjs.map +1 -0
- package/dist/password/methods/models.d.mts +70 -0
- package/dist/password/methods/models.mjs +44 -0
- package/dist/password/methods/models.mjs.map +1 -0
- package/dist/password/methods/module.d.mts +3567 -0
- package/dist/password/methods/module.mjs +553 -0
- package/dist/password/methods/module.mjs.map +1 -0
- package/dist/password/methods/policy.d.mts +84 -0
- package/dist/password/methods/policy.mjs +80 -0
- package/dist/password/methods/policy.mjs.map +1 -0
- package/dist/password/methods/preparation.mjs +54 -0
- package/dist/password/methods/preparation.mjs.map +1 -0
- package/dist/password/methods/prepared.d.mts +53 -0
- package/dist/password/methods/prepared.mjs +610 -0
- package/dist/password/methods/prepared.mjs.map +1 -0
- package/dist/password/methods/preparedModels.d.mts +1295 -0
- package/dist/password/methods/preparedModels.mjs +278 -0
- package/dist/password/methods/preparedModels.mjs.map +1 -0
- package/dist/password/methods/signIn.d.mts +180 -0
- package/dist/password/methods/signIn.mjs +73 -0
- package/dist/password/methods/signIn.mjs.map +1 -0
- package/dist/password/methods/snapshot.mjs +38 -0
- package/dist/password/methods/snapshot.mjs.map +1 -0
- package/dist/password/methods/verification.mjs +138 -0
- package/dist/password/methods/verification.mjs.map +1 -0
- package/dist/password/models.d.mts +13 -0
- package/dist/password/models.mjs +12 -0
- package/dist/password/models.mjs.map +1 -0
- package/dist/password/policy.d.mts +33 -0
- package/dist/password/policy.mjs +37 -0
- package/dist/password/policy.mjs.map +1 -0
- package/dist/phone/PhoneActionEvidence.d.mts +23 -0
- package/dist/phone/PhoneActionEvidence.mjs +10 -0
- package/dist/phone/PhoneActionEvidence.mjs.map +1 -0
- package/dist/phone/PhoneAdmission.d.mts +29 -0
- package/dist/phone/PhoneAdmission.mjs +10 -0
- package/dist/phone/PhoneAdmission.mjs.map +1 -0
- package/dist/phone/PhoneDeliveryEligibility.d.mts +11 -0
- package/dist/phone/PhoneDeliveryEligibility.mjs +8 -0
- package/dist/phone/PhoneDeliveryEligibility.mjs.map +1 -0
- package/dist/phone/PhonePersistence.d.mts +33 -0
- package/dist/phone/PhonePersistence.mjs +10 -0
- package/dist/phone/PhonePersistence.mjs.map +1 -0
- package/dist/phone/PhoneRequestContext.d.mts +10 -0
- package/dist/phone/PhoneRequestContext.mjs +8 -0
- package/dist/phone/PhoneRequestContext.mjs.map +1 -0
- package/dist/phone/PhoneSignInTargets.d.mts +19 -0
- package/dist/phone/PhoneSignInTargets.mjs +13 -0
- package/dist/phone/PhoneSignInTargets.mjs.map +1 -0
- package/dist/phone/definition.d.mts +7190 -0
- package/dist/phone/definition.mjs +28 -0
- package/dist/phone/definition.mjs.map +1 -0
- package/dist/phone/failure.mjs +23 -0
- package/dist/phone/failure.mjs.map +1 -0
- package/dist/phone/lifecycle.mjs +427 -0
- package/dist/phone/lifecycle.mjs.map +1 -0
- package/dist/phone/lifecycleModels.d.mts +164 -0
- package/dist/phone/lifecycleModels.mjs +91 -0
- package/dist/phone/lifecycleModels.mjs.map +1 -0
- package/dist/phone/models.d.mts +41 -0
- package/dist/phone/models.mjs +29 -0
- package/dist/phone/models.mjs.map +1 -0
- package/dist/phone/module.d.mts +6027 -0
- package/dist/phone/module.mjs +293 -0
- package/dist/phone/module.mjs.map +1 -0
- package/dist/proofs/EmailProofDelivery.d.mts +13 -0
- package/dist/proofs/EmailProofDelivery.mjs +11 -0
- package/dist/proofs/EmailProofDelivery.mjs.map +1 -0
- package/dist/proofs/HostIngressLimiter.d.mts +20 -0
- package/dist/proofs/HostIngressLimiter.mjs +13 -0
- package/dist/proofs/HostIngressLimiter.mjs.map +1 -0
- package/dist/proofs/ProofPersistence.d.mts +140 -0
- package/dist/proofs/ProofPersistence.mjs +13 -0
- package/dist/proofs/ProofPersistence.mjs.map +1 -0
- package/dist/proofs/SmsProofDelivery.d.mts +13 -0
- package/dist/proofs/SmsProofDelivery.mjs +11 -0
- package/dist/proofs/SmsProofDelivery.mjs.map +1 -0
- package/dist/proofs/abuse.d.mts +15 -0
- package/dist/proofs/abuse.mjs +12 -0
- package/dist/proofs/abuse.mjs.map +1 -0
- package/dist/proofs/completion.d.mts +22 -0
- package/dist/proofs/crypto.d.mts +196 -0
- package/dist/proofs/crypto.mjs +189 -0
- package/dist/proofs/crypto.mjs.map +1 -0
- package/dist/proofs/definition.d.mts +335 -0
- package/dist/proofs/definition.mjs +10 -0
- package/dist/proofs/definition.mjs.map +1 -0
- package/dist/proofs/delivery.d.mts +30 -0
- package/dist/proofs/delivery.mjs +26 -0
- package/dist/proofs/delivery.mjs.map +1 -0
- package/dist/proofs/dispatch.d.mts +20 -0
- package/dist/proofs/dispatch.mjs +54 -0
- package/dist/proofs/dispatch.mjs.map +1 -0
- package/dist/proofs/errors.d.mts +21 -0
- package/dist/proofs/errors.mjs +25 -0
- package/dist/proofs/errors.mjs.map +1 -0
- package/dist/proofs/models.d.mts +141 -0
- package/dist/proofs/models.mjs +93 -0
- package/dist/proofs/models.mjs.map +1 -0
- package/dist/proofs/module.d.mts +344 -0
- package/dist/proofs/module.mjs +350 -0
- package/dist/proofs/module.mjs.map +1 -0
- package/dist/proofs/policy.d.mts +152 -0
- package/dist/proofs/policy.mjs +51 -0
- package/dist/proofs/policy.mjs.map +1 -0
- package/dist/sessions/AuthenticationAuthority.d.mts +31 -0
- package/dist/sessions/AuthenticationAuthority.mjs +8 -0
- package/dist/sessions/AuthenticationAuthority.mjs.map +1 -0
- package/dist/sessions/PendingAuthentication.d.mts +108 -0
- package/dist/sessions/PendingAuthentication.mjs +40 -0
- package/dist/sessions/PendingAuthentication.mjs.map +1 -0
- package/dist/sessions/SessionStepUpPersistence.d.mts +152 -0
- package/dist/sessions/SessionStepUpPersistence.mjs +63 -0
- package/dist/sessions/SessionStepUpPersistence.mjs.map +1 -0
- package/dist/sessions/assurance.d.mts +163 -0
- package/dist/sessions/assurance.mjs +95 -0
- package/dist/sessions/assurance.mjs.map +1 -0
- package/dist/sessions/commit.d.mts +13 -0
- package/dist/sessions/configuration.d.mts +46 -0
- package/dist/sessions/configuration.mjs +55 -0
- package/dist/sessions/configuration.mjs.map +1 -0
- package/dist/sessions/contract.d.mts +663 -0
- package/dist/sessions/contract.mjs +174 -0
- package/dist/sessions/contract.mjs.map +1 -0
- package/dist/sessions/crypto.d.mts +24 -0
- package/dist/sessions/crypto.mjs +106 -0
- package/dist/sessions/crypto.mjs.map +1 -0
- package/dist/sessions/definition.d.mts +11 -0
- package/dist/sessions/definition.mjs +10 -0
- package/dist/sessions/definition.mjs.map +1 -0
- package/dist/sessions/errors.d.mts +35 -0
- package/dist/sessions/errors.mjs +34 -0
- package/dist/sessions/errors.mjs.map +1 -0
- package/dist/sessions/invalidation.d.mts +23 -0
- package/dist/sessions/invalidation.mjs +33 -0
- package/dist/sessions/invalidation.mjs.map +1 -0
- package/dist/sessions/models.d.mts +143 -0
- package/dist/sessions/models.mjs +94 -0
- package/dist/sessions/models.mjs.map +1 -0
- package/dist/sessions/module.d.mts +1091 -0
- package/dist/sessions/module.mjs +943 -0
- package/dist/sessions/module.mjs.map +1 -0
- package/dist/sessions/persistence.d.mts +93 -0
- package/dist/sessions/policy.d.mts +80 -0
- package/dist/sessions/policy.mjs +66 -0
- package/dist/sessions/policy.mjs.map +1 -0
- package/dist/testing/conformance/AuthStore.d.mts +11 -0
- package/dist/testing/conformance/AuthStore.mjs +173 -0
- package/dist/testing/conformance/AuthStore.mjs.map +1 -0
- package/dist/testing/conformance/OAuthConnectionStore.d.mts +11 -0
- package/dist/testing/conformance/OAuthConnectionStore.mjs +102 -0
- package/dist/testing/conformance/OAuthConnectionStore.mjs.map +1 -0
- package/dist/testing/conformance/OAuthStateStore.d.mts +11 -0
- package/dist/testing/conformance/OAuthStateStore.mjs +45 -0
- package/dist/testing/conformance/OAuthStateStore.mjs.map +1 -0
- package/dist/testing/conformance/PasswordCredentialStore.d.mts +20 -0
- package/dist/testing/conformance/PasswordCredentialStore.mjs +103 -0
- package/dist/testing/conformance/PasswordCredentialStore.mjs.map +1 -0
- package/dist/testing/conformance/support.mjs +17 -0
- package/dist/testing/conformance/support.mjs.map +1 -0
- package/dist/testing/crypto.d.mts +11 -0
- package/dist/testing/crypto.mjs +41 -0
- package/dist/testing/crypto.mjs.map +1 -0
- package/dist/testing/keyring.d.mts +9 -0
- package/dist/testing/keyring.mjs +17 -0
- package/dist/testing/keyring.mjs.map +1 -0
- package/dist/totp/TotpActionEvidence.d.mts +18 -0
- package/dist/totp/TotpActionEvidence.mjs +8 -0
- package/dist/totp/TotpActionEvidence.mjs.map +1 -0
- package/dist/totp/TotpPersistence.d.mts +19 -0
- package/dist/totp/TotpPersistence.mjs +8 -0
- package/dist/totp/TotpPersistence.mjs.map +1 -0
- package/dist/totp/TotpSecretKeys.d.mts +15 -0
- package/dist/totp/TotpSecretKeys.mjs +8 -0
- package/dist/totp/TotpSecretKeys.mjs.map +1 -0
- package/dist/totp/crypto.mjs +96 -0
- package/dist/totp/crypto.mjs.map +1 -0
- package/dist/totp/definition.d.mts +764 -0
- package/dist/totp/definition.mjs +24 -0
- package/dist/totp/definition.mjs.map +1 -0
- package/dist/totp/errors.d.mts +16 -0
- package/dist/totp/errors.mjs +18 -0
- package/dist/totp/errors.mjs.map +1 -0
- package/dist/totp/models.d.mts +377 -0
- package/dist/totp/models.mjs +137 -0
- package/dist/totp/models.mjs.map +1 -0
- package/dist/totp/module.d.mts +737 -0
- package/dist/totp/module.mjs +355 -0
- package/dist/totp/module.mjs.map +1 -0
- package/package.json +1 -0
- package/src/Atom.ts +4 -0
- package/src/Auth.ts +16 -0
- package/src/AuthContract.ts +17 -0
- package/src/AuthSession.ts +298 -0
- package/src/AuthStore.ts +367 -0
- package/src/AuthTokenCodec.ts +226 -0
- package/src/Client.ts +9 -0
- package/src/Cloudflare.ts +345 -0
- package/src/Drizzle.ts +378 -0
- package/src/DrizzleD1.ts +136 -0
- package/src/DrizzleLibsql.ts +288 -0
- package/src/DrizzleMysql2.ts +184 -0
- package/src/DrizzlePglite.ts +160 -0
- package/src/DrizzlePostgres.ts +160 -0
- package/src/DrizzleSqliteBun.ts +244 -0
- package/src/DrizzleSqliteDo.ts +473 -0
- package/src/DrizzleSqliteNode.ts +245 -0
- package/src/DrizzleSqliteWasm.ts +245 -0
- package/src/Email.ts +55 -0
- package/src/EmailOtp.ts +250 -0
- package/src/EmailOtpSender.ts +28 -0
- package/src/Errors.ts +103 -0
- package/src/GitHub.ts +16 -0
- package/src/Hooks.ts +50 -0
- package/src/Http.ts +47 -0
- package/src/HttpServer.ts +742 -0
- package/src/Identity.ts +53 -0
- package/src/IdentityResolver.ts +18 -0
- package/src/OAuth.ts +242 -0
- package/src/OpenIdClient.ts +13 -0
- package/src/OpenIdClientConnected.ts +18 -0
- package/src/OperationHttp.ts +14 -0
- package/src/OperationHttpClient.ts +6 -0
- package/src/OperationHttpServer.ts +15 -0
- package/src/Operations.ts +69 -0
- package/src/Passkey.ts +81 -0
- package/src/PasskeyBrowser.ts +19 -0
- package/src/PasskeyContract.ts +212 -0
- package/src/PasskeyPassword.ts +319 -0
- package/src/PasskeySimpleWebAuthn.ts +6 -0
- package/src/Password.ts +113 -0
- package/src/PasswordAuth.ts +197 -0
- package/src/PasswordCredentialStore.ts +140 -0
- package/src/PasswordHasher.ts +147 -0
- package/src/PhoneOtp.ts +32 -0
- package/src/Policy.ts +95 -0
- package/src/Proofs.ts +71 -0
- package/src/Rpc.ts +15 -0
- package/src/Schema.ts +235 -0
- package/src/SessionContract.ts +2 -0
- package/src/Sessions.ts +105 -0
- package/src/Testing.ts +24 -0
- package/src/Totp.ts +28 -0
- package/src/TotpContract.ts +147 -0
- package/src/WebCrypto.ts +61 -0
- package/src/Workflows.ts +12 -0
- package/src/atom/AuthAtomLifetime.ts +87 -0
- package/src/atom/AuthAtomWorkflow.ts +27 -0
- package/src/atom/client.ts +364 -0
- package/src/atom/operations.ts +183 -0
- package/src/atom/scoped-runtime.ts +249 -0
- package/src/auth/Auth.ts +482 -0
- package/src/auth/AuthConfigurationError.ts +9 -0
- package/src/auth/AuthRequest.ts +21 -0
- package/src/auth/AuthStrategy.ts +116 -0
- package/src/auth/ConsumeDecision.ts +4 -0
- package/src/auth/actions.ts +220 -0
- package/src/auth/defaults.ts +23 -0
- package/src/auth/definition.ts +88 -0
- package/src/auth/session.ts +146 -0
- package/src/drizzle/D1BatchStatements.ts +10 -0
- package/src/drizzle/PasswordPreparedPostconditions.ts +30 -0
- package/src/drizzle/SuppliedService.ts +10 -0
- package/src/drizzle/d1-emails.ts +1808 -0
- package/src/drizzle/d1-generated-statement.ts +129 -0
- package/src/drizzle/d1-identity.ts +374 -0
- package/src/drizzle/d1-oauth.ts +338 -0
- package/src/drizzle/d1-passkey.ts +371 -0
- package/src/drizzle/d1-password-prepared.ts +1273 -0
- package/src/drizzle/d1-passwords.ts +2661 -0
- package/src/drizzle/d1-phone.ts +94 -0
- package/src/drizzle/d1-planning.ts +105 -0
- package/src/drizzle/d1-proofs.ts +2305 -0
- package/src/drizzle/d1-sessions.ts +2867 -0
- package/src/drizzle/d1-totp.ts +79 -0
- package/src/drizzle/email-model.ts +512 -0
- package/src/drizzle/email-registration.ts +696 -0
- package/src/drizzle/email-sql.ts +1468 -0
- package/src/drizzle/email-target.ts +243 -0
- package/src/drizzle/model.ts +492 -0
- package/src/drizzle/mysql-emails.ts +323 -0
- package/src/drizzle/mysql-identity.ts +323 -0
- package/src/drizzle/mysql-password-prepared.ts +206 -0
- package/src/drizzle/mysql-passwords.ts +341 -0
- package/src/drizzle/mysql-proofs.ts +183 -0
- package/src/drizzle/mysql-sessions.ts +742 -0
- package/src/drizzle/mysql.ts +686 -0
- package/src/drizzle/oauth-accounts.ts +801 -0
- package/src/drizzle/oauth-connected-access.ts +354 -0
- package/src/drizzle/oauth-connected-collection.ts +324 -0
- package/src/drizzle/oauth-connected-custody.ts +277 -0
- package/src/drizzle/oauth-connected-drivers.ts +463 -0
- package/src/drizzle/oauth-connected-flow.ts +439 -0
- package/src/drizzle/oauth-connected-input.ts +128 -0
- package/src/drizzle/oauth-connected-maintenance.ts +345 -0
- package/src/drizzle/oauth-connected-management.ts +365 -0
- package/src/drizzle/oauth-connected-model.ts +347 -0
- package/src/drizzle/oauth-connected-reference.ts +112 -0
- package/src/drizzle/oauth-connected-settlement.ts +226 -0
- package/src/drizzle/oauth-connected-state.ts +846 -0
- package/src/drizzle/oauth-connected-target.ts +264 -0
- package/src/drizzle/oauth-drivers.ts +567 -0
- package/src/drizzle/oauth-flow.ts +461 -0
- package/src/drizzle/oauth-input.ts +205 -0
- package/src/drizzle/oauth-model.ts +610 -0
- package/src/drizzle/oauth-mysql.ts +10 -0
- package/src/drizzle/oauth-owner.ts +29 -0
- package/src/drizzle/oauth-registration.ts +638 -0
- package/src/drizzle/oauth-state.ts +213 -0
- package/src/drizzle/oauth-target.ts +751 -0
- package/src/drizzle/passkey-admission.ts +333 -0
- package/src/drizzle/passkey-credentials.ts +465 -0
- package/src/drizzle/passkey-drivers.ts +385 -0
- package/src/drizzle/passkey-enrollment.ts +280 -0
- package/src/drizzle/passkey-flow.ts +983 -0
- package/src/drizzle/passkey-management.ts +369 -0
- package/src/drizzle/passkey-model.ts +350 -0
- package/src/drizzle/passkey-registration-ceremony-model.ts +69 -0
- package/src/drizzle/passkey-registration-ceremony.ts +254 -0
- package/src/drizzle/passkey-registration-custody.ts +82 -0
- package/src/drizzle/passkey-registration-write.ts +378 -0
- package/src/drizzle/passkey-state.ts +307 -0
- package/src/drizzle/passkey-target.ts +528 -0
- package/src/drizzle/passkey-write-drivers.ts +396 -0
- package/src/drizzle/passkey-write-model.ts +265 -0
- package/src/drizzle/passkey-write-state.ts +627 -0
- package/src/drizzle/passkey-write-target.ts +406 -0
- package/src/drizzle/password-model.ts +491 -0
- package/src/drizzle/password-prepared-model.ts +259 -0
- package/src/drizzle/password-prepared-sql.ts +1198 -0
- package/src/drizzle/password-prepared-state.ts +232 -0
- package/src/drizzle/password-prepared-target.ts +158 -0
- package/src/drizzle/password-registration.ts +372 -0
- package/src/drizzle/password-sql.ts +2082 -0
- package/src/drizzle/password-target.ts +223 -0
- package/src/drizzle/pg-emails.ts +323 -0
- package/src/drizzle/pg-password-prepared.ts +207 -0
- package/src/drizzle/pg-passwords.ts +340 -0
- package/src/drizzle/pg-proofs.ts +193 -0
- package/src/drizzle/pg-sessions.ts +751 -0
- package/src/drizzle/pg.ts +982 -0
- package/src/drizzle/phone-model.ts +185 -0
- package/src/drizzle/phone-state.ts +802 -0
- package/src/drizzle/phone-target.ts +471 -0
- package/src/drizzle/proof-model.ts +398 -0
- package/src/drizzle/proof-sql.ts +1912 -0
- package/src/drizzle/proof-target.ts +120 -0
- package/src/drizzle/session-model.ts +368 -0
- package/src/drizzle/session-sql.ts +2152 -0
- package/src/drizzle/session-target.ts +335 -0
- package/src/drizzle/sqlite-emails.ts +368 -0
- package/src/drizzle/sqlite-identity.ts +343 -0
- package/src/drizzle/sqlite-password-prepared.ts +262 -0
- package/src/drizzle/sqlite-passwords.ts +499 -0
- package/src/drizzle/sqlite-proofs.ts +204 -0
- package/src/drizzle/sqlite-sessions.ts +972 -0
- package/src/drizzle/sqlite.ts +704 -0
- package/src/drizzle/standalone-guard.ts +38 -0
- package/src/drizzle/step-up-model.ts +129 -0
- package/src/drizzle/step-up-state.ts +141 -0
- package/src/drizzle/totp-model.ts +91 -0
- package/src/drizzle/totp-state.ts +520 -0
- package/src/drizzle/totp-target.ts +304 -0
- package/src/drizzle/transaction-execution.ts +290 -0
- package/src/drizzle/transaction-mysql.ts +104 -0
- package/src/drizzle/transaction-owner.ts +570 -0
- package/src/email/EmailActionEvidence.ts +37 -0
- package/src/email/EmailAddressPersistence.ts +71 -0
- package/src/email/EmailIdentifierNotifier.ts +48 -0
- package/src/email/EmailReturnTargets.ts +50 -0
- package/src/email/EmailSignInTargets.ts +20 -0
- package/src/email/addresses.ts +630 -0
- package/src/email/definition.ts +309 -0
- package/src/email/errors.ts +23 -0
- package/src/email/magicLink.ts +84 -0
- package/src/email/models.ts +50 -0
- package/src/email/module.ts +664 -0
- package/src/email/registration.ts +415 -0
- package/src/email/snapshot.ts +51 -0
- package/src/hooks/LifecycleHooks.ts +136 -0
- package/src/hooks/commit.ts +271 -0
- package/src/hooks/models.ts +111 -0
- package/src/hooks/plugins.ts +87 -0
- package/src/hooks/transactions.ts +51 -0
- package/src/http/auth-api.ts +17 -0
- package/src/http/auth-contract.ts +148 -0
- package/src/http/auth-http.ts +467 -0
- package/src/http/endpoints/get-session.ts +9 -0
- package/src/http/endpoints/password-sign-in.ts +19 -0
- package/src/http/endpoints/request-email-otp.ts +10 -0
- package/src/http/endpoints/set-password.ts +18 -0
- package/src/http/endpoints/sign-out.ts +5 -0
- package/src/http/endpoints/verify-email-otp.ts +15 -0
- package/src/http/models.ts +80 -0
- package/src/http/security.ts +102 -0
- package/src/http/session-contract.ts +92 -0
- package/src/http-operation/OperationHttpInvocation.ts +39 -0
- package/src/http-operation/OperationHttpServerConfig.ts +124 -0
- package/src/http-operation/auth-client.ts +273 -0
- package/src/http-operation/client.ts +453 -0
- package/src/http-operation/configuration-schema.ts +19 -0
- package/src/http-operation/contract.ts +116 -0
- package/src/http-operation/errors.ts +38 -0
- package/src/http-operation/models.ts +42 -0
- package/src/http-operation/private.ts +50 -0
- package/src/http-operation/security.ts +93 -0
- package/src/http-operation/server.ts +544 -0
- package/src/identity/ExternalIdentityMutation.ts +18 -0
- package/src/identity/IdentityMutation.ts +41 -0
- package/src/identity/IdentityRepository.ts +37 -0
- package/src/identity/SubjectLifecycle.ts +80 -0
- package/src/identity/SubjectProvisioner.ts +40 -0
- package/src/identity/codecs.ts +54 -0
- package/src/identity/models.ts +82 -0
- package/src/identity/operations.ts +182 -0
- package/src/index.ts +23 -0
- package/src/internal/AuthStoreDecisions.ts +23 -0
- package/src/internal/CurrentSession.ts +8 -0
- package/src/internal/diagnostics.ts +71 -0
- package/src/oauth/GithubOAuthProvider.ts +106 -0
- package/src/oauth/OAuth.ts +436 -0
- package/src/oauth/OAuthAccountsPersistence.ts +142 -0
- package/src/oauth/OAuthActionEvidence.ts +31 -0
- package/src/oauth/OAuthConnectedActionEvidence.ts +28 -0
- package/src/oauth/OAuthConnectedPersistence.ts +163 -0
- package/src/oauth/OAuthConnectedProtocol.ts +54 -0
- package/src/oauth/OAuthConnectedRevocations.ts +48 -0
- package/src/oauth/OAuthConnectedTokenProtector.ts +240 -0
- package/src/oauth/OAuthConnectedTransactionProtector.ts +56 -0
- package/src/oauth/OAuthConnectedUseAuthority.ts +26 -0
- package/src/oauth/OAuthConnectionStore.ts +59 -0
- package/src/oauth/OAuthLinkTransactionProtector.ts +58 -0
- package/src/oauth/OAuthProtocol.ts +39 -0
- package/src/oauth/OAuthProvider.ts +126 -0
- package/src/oauth/OAuthProviders.ts +53 -0
- package/src/oauth/OAuthRegistrationIntents.ts +42 -0
- package/src/oauth/OAuthReturnTargets.ts +44 -0
- package/src/oauth/OAuthSignInPersistence.ts +91 -0
- package/src/oauth/OAuthStateDecisions.ts +16 -0
- package/src/oauth/OAuthStateStore.ts +102 -0
- package/src/oauth/OAuthTransactionProtector.ts +103 -0
- package/src/oauth/accounts.ts +987 -0
- package/src/oauth/accountsModels.ts +214 -0
- package/src/oauth/connected.ts +995 -0
- package/src/oauth/connectedAccess.ts +644 -0
- package/src/oauth/connectedMaintenance.ts +248 -0
- package/src/oauth/connectedModels.ts +495 -0
- package/src/oauth/definition.ts +414 -0
- package/src/oauth/errors.ts +78 -0
- package/src/oauth/github/identity.ts +26 -0
- package/src/oauth/github/models.ts +37 -0
- package/src/oauth/github/protocol.ts +329 -0
- package/src/oauth/openid-client/ProviderRevocation.ts +22 -0
- package/src/oauth/openid-client/compatibility.ts +47 -0
- package/src/oauth/openid-client/configuration.ts +472 -0
- package/src/oauth/openid-client/connected/configuration.ts +565 -0
- package/src/oauth/openid-client/connected/models.ts +58 -0
- package/src/oauth/openid-client/connected/protocol.ts +866 -0
- package/src/oauth/openid-client/models.ts +78 -0
- package/src/oauth/openid-client/protocol.ts +437 -0
- package/src/oauth/openid-client/transport.ts +67 -0
- package/src/oauth/policy.ts +26 -0
- package/src/oauth/registration.ts +410 -0
- package/src/oauth/registrationModels.ts +115 -0
- package/src/oauth/registrationSecrets.ts +127 -0
- package/src/oauth/schema.ts +102 -0
- package/src/oauth/signInErrors.ts +23 -0
- package/src/oauth/signInModels.ts +266 -0
- package/src/oauth/signInModule.ts +875 -0
- package/src/oauth/signInSnapshot.ts +37 -0
- package/src/oauth/transactionEncryption.ts +198 -0
- package/src/operations/RequestBindingConfig.ts +12 -0
- package/src/operations/actions.ts +342 -0
- package/src/operations/context.ts +130 -0
- package/src/operations/credentials.ts +121 -0
- package/src/operations/errors.ts +53 -0
- package/src/operations/operation.ts +740 -0
- package/src/operations/requestBinding.ts +237 -0
- package/src/operations/requestBindingModels.ts +18 -0
- package/src/operations/reveals.ts +147 -0
- package/src/passkey/PasskeyActionEvidence.ts +25 -0
- package/src/passkey/PasskeyCredentials.ts +16 -0
- package/src/passkey/PasskeyEnrollmentContext.ts +26 -0
- package/src/passkey/PasskeyManagementPersistence.ts +124 -0
- package/src/passkey/PasskeyPersistence.ts +85 -0
- package/src/passkey/PasskeyProtocol.ts +48 -0
- package/src/passkey/actions.ts +905 -0
- package/src/passkey/browser/PasskeyBrowser.ts +26 -0
- package/src/passkey/browser/models.ts +67 -0
- package/src/passkey/browser/simplewebauthn.ts +621 -0
- package/src/passkey/definition.ts +386 -0
- package/src/passkey/errors.ts +39 -0
- package/src/passkey/management.ts +552 -0
- package/src/passkey/models.ts +414 -0
- package/src/passkey/module.ts +367 -0
- package/src/passkey/pending.ts +203 -0
- package/src/passkey/policy.ts +88 -0
- package/src/passkey/registration.ts +251 -0
- package/src/passkey/simplewebauthn/configuration.ts +97 -0
- package/src/passkey/simplewebauthn/models.ts +9 -0
- package/src/passkey/simplewebauthn/protocol.ts +729 -0
- package/src/passkey/snapshot.ts +48 -0
- package/src/passkey/stepUp.ts +212 -0
- package/src/password/CompromisedPasswords.ts +36 -0
- package/src/password/NewPasswordCheck.ts +89 -0
- package/src/password/PasswordHashing.ts +209 -0
- package/src/password/PasswordKdfAdmission.ts +44 -0
- package/src/password/configuration.ts +52 -0
- package/src/password/defaults.ts +15 -0
- package/src/password/encoding.ts +137 -0
- package/src/password/errors.ts +43 -0
- package/src/password/methods/PasswordActionEvidence.ts +41 -0
- package/src/password/methods/PasswordPersistence.ts +128 -0
- package/src/password/methods/PasswordPreparedPersistence.ts +123 -0
- package/src/password/methods/contracts.ts +47 -0
- package/src/password/methods/definition.ts +199 -0
- package/src/password/methods/errors.ts +26 -0
- package/src/password/methods/models.ts +80 -0
- package/src/password/methods/module.ts +986 -0
- package/src/password/methods/policy.ts +68 -0
- package/src/password/methods/preparation.ts +73 -0
- package/src/password/methods/prepared.ts +1199 -0
- package/src/password/methods/preparedModels.ts +496 -0
- package/src/password/methods/signIn.ts +136 -0
- package/src/password/methods/snapshot.ts +53 -0
- package/src/password/methods/verification.ts +266 -0
- package/src/password/models.ts +15 -0
- package/src/password/policy.ts +41 -0
- package/src/phone/PhoneActionEvidence.ts +26 -0
- package/src/phone/PhoneAdmission.ts +29 -0
- package/src/phone/PhoneDeliveryEligibility.ts +9 -0
- package/src/phone/PhonePersistence.ts +43 -0
- package/src/phone/PhoneRequestContext.ts +7 -0
- package/src/phone/PhoneSignInTargets.ts +19 -0
- package/src/phone/definition.ts +87 -0
- package/src/phone/failure.ts +40 -0
- package/src/phone/lifecycle.ts +662 -0
- package/src/phone/lifecycleModels.ts +108 -0
- package/src/phone/models.ts +41 -0
- package/src/phone/module.ts +433 -0
- package/src/proofs/EmailProofDelivery.ts +19 -0
- package/src/proofs/HostIngressLimiter.ts +20 -0
- package/src/proofs/ProofPersistence.ts +172 -0
- package/src/proofs/SmsProofDelivery.ts +19 -0
- package/src/proofs/abuse.ts +23 -0
- package/src/proofs/completion.ts +23 -0
- package/src/proofs/crypto.ts +326 -0
- package/src/proofs/definition.ts +39 -0
- package/src/proofs/delivery.ts +73 -0
- package/src/proofs/dispatch.ts +99 -0
- package/src/proofs/errors.ts +46 -0
- package/src/proofs/models.ts +131 -0
- package/src/proofs/module.ts +620 -0
- package/src/proofs/policy.ts +77 -0
- package/src/sessions/AuthenticationAuthority.ts +51 -0
- package/src/sessions/PendingAuthentication.ts +121 -0
- package/src/sessions/SessionStepUpPersistence.ts +164 -0
- package/src/sessions/assurance.ts +192 -0
- package/src/sessions/commit.ts +13 -0
- package/src/sessions/configuration.ts +133 -0
- package/src/sessions/contract.ts +203 -0
- package/src/sessions/crypto.ts +181 -0
- package/src/sessions/definition.ts +25 -0
- package/src/sessions/errors.ts +68 -0
- package/src/sessions/invalidation.ts +46 -0
- package/src/sessions/models.ts +138 -0
- package/src/sessions/module.ts +1991 -0
- package/src/sessions/persistence.ts +135 -0
- package/src/sessions/policy.ts +103 -0
- package/src/testing/conformance/AuthStore.ts +314 -0
- package/src/testing/conformance/OAuthConnectionStore.ts +167 -0
- package/src/testing/conformance/OAuthStateStore.ts +105 -0
- package/src/testing/conformance/PasswordCredentialStore.ts +205 -0
- package/src/testing/conformance/support.ts +38 -0
- package/src/testing/crypto.ts +55 -0
- package/src/testing/keyring.ts +17 -0
- package/src/totp/TotpActionEvidence.ts +18 -0
- package/src/totp/TotpPersistence.ts +26 -0
- package/src/totp/TotpSecretKeys.ts +15 -0
- package/src/totp/crypto.ts +160 -0
- package/src/totp/definition.ts +78 -0
- package/src/totp/errors.ts +25 -0
- package/src/totp/models.ts +164 -0
- package/src/totp/module.ts +717 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IdentityMutation.mjs","names":[],"sources":["../../src/identity/IdentityMutation.ts"],"sourcesContent":["import { Context, type Effect } from \"effect\";\n\nimport type { SubjectId } from \"../Schema\";\nimport type {\n CredentialId,\n IdentityConflict,\n IdentityUnavailable,\n LastSignInMethod,\n LoginIdentifier,\n SubjectInactive,\n} from \"./models\";\n\n/**\n * Narrow removal capability. The authoritative adapter checks active status,\n * ownership and the remaining usable sign-in methods in the SAME atomic write.\n * A read/count followed by deletion is insufficient under concurrent removals.\n * Removing a credential also removes its retained secrets and dependent proofs.\n * Identifier removal/rebinding/verification changes that invalidate captured login\n * authority MUST atomically bump subject securityRevision. AuthenticationRevision\n * deliberately has no identifier-binding revision: deleting dependent proofs alone\n * cannot invalidate password evidence already captured before verification.\n */\nexport class IdentityMutation extends Context.Service<\n IdentityMutation,\n {\n readonly removeIdentifier: (\n subjectId: SubjectId,\n identifier: LoginIdentifier,\n ) => Effect.Effect<\n void,\n IdentityConflict | LastSignInMethod | SubjectInactive | IdentityUnavailable\n >;\n readonly removeCredential: (\n subjectId: SubjectId,\n credentialId: CredentialId,\n ) => Effect.Effect<\n void,\n IdentityConflict | LastSignInMethod | SubjectInactive | IdentityUnavailable\n >;\n }\n>()(\"effect-auth/IdentityMutation\") {}\n"],"mappings":";;;;;;;;;;;;AAsBA,IAAa,mBAAb,cAAsC,QAAQ,QAkB5C,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SubjectId } from "../Schema.mjs";
|
|
2
|
+
import { CredentialSummary, ExternalIdentity, IdentifierBinding, IdentityUnavailable, LoginIdentifier, SubjectSnapshot } from "./models.mjs";
|
|
3
|
+
import { Context, Effect, Option } from "effect";
|
|
4
|
+
//#region src/identity/IdentityRepository.d.ts
|
|
5
|
+
declare const IdentityRepository_base: Context.ServiceClass<IdentityRepository, "effect-auth/IdentityRepository", {
|
|
6
|
+
readonly findSubject: (subjectId: SubjectId) => Effect.Effect<Option.Option<SubjectSnapshot>, IdentityUnavailable>;
|
|
7
|
+
readonly findIdentifier: (identifier: LoginIdentifier) => Effect.Effect<Option.Option<IdentifierBinding>, IdentityUnavailable>;
|
|
8
|
+
/** Resolve the full configured provider + issuer + external subject tuple. */
|
|
9
|
+
readonly findExternalIdentity: (identity: ExternalIdentity) => Effect.Effect<Option.Option<SubjectId>, IdentityUnavailable>;
|
|
10
|
+
readonly listIdentifiers: (subjectId: SubjectId) => Effect.Effect<ReadonlyArray<IdentifierBinding>, IdentityUnavailable>;
|
|
11
|
+
readonly listCredentials: (subjectId: SubjectId) => Effect.Effect<ReadonlyArray<CredentialSummary>, IdentityUnavailable>;
|
|
12
|
+
}>;
|
|
13
|
+
/**
|
|
14
|
+
* Application identity queries. No profile fields, email requirement, table
|
|
15
|
+
* layout, or account-creation side effect is implied by resolving an identity.
|
|
16
|
+
*/
|
|
17
|
+
declare class IdentityRepository extends IdentityRepository_base {}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { IdentityRepository };
|
|
20
|
+
//# sourceMappingURL=IdentityRepository.d.mts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Context } from "effect";
|
|
2
|
+
//#region src/identity/IdentityRepository.ts
|
|
3
|
+
/**
|
|
4
|
+
* Application identity queries. No profile fields, email requirement, table
|
|
5
|
+
* layout, or account-creation side effect is implied by resolving an identity.
|
|
6
|
+
*/
|
|
7
|
+
var IdentityRepository = class extends Context.Service()("effect-auth/IdentityRepository") {};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { IdentityRepository };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=IdentityRepository.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IdentityRepository.mjs","names":[],"sources":["../../src/identity/IdentityRepository.ts"],"sourcesContent":["import { Context, type Effect, type Option } from \"effect\";\n\nimport type { SubjectId } from \"../Schema\";\nimport type {\n CredentialSummary,\n ExternalIdentity,\n IdentifierBinding,\n IdentityUnavailable,\n LoginIdentifier,\n SubjectSnapshot,\n} from \"./models\";\n\n/**\n * Application identity queries. No profile fields, email requirement, table\n * layout, or account-creation side effect is implied by resolving an identity.\n */\nexport class IdentityRepository extends Context.Service<\n IdentityRepository,\n {\n readonly findSubject: (\n subjectId: SubjectId,\n ) => Effect.Effect<Option.Option<SubjectSnapshot>, IdentityUnavailable>;\n readonly findIdentifier: (\n identifier: LoginIdentifier,\n ) => Effect.Effect<Option.Option<IdentifierBinding>, IdentityUnavailable>;\n /** Resolve the full configured provider + issuer + external subject tuple. */\n readonly findExternalIdentity: (\n identity: ExternalIdentity,\n ) => Effect.Effect<Option.Option<SubjectId>, IdentityUnavailable>;\n readonly listIdentifiers: (\n subjectId: SubjectId,\n ) => Effect.Effect<ReadonlyArray<IdentifierBinding>, IdentityUnavailable>;\n readonly listCredentials: (\n subjectId: SubjectId,\n ) => Effect.Effect<ReadonlyArray<CredentialSummary>, IdentityUnavailable>;\n }\n>()(\"effect-auth/IdentityRepository\") {}\n"],"mappings":";;;;;;AAgBA,IAAa,qBAAb,cAAwC,QAAQ,QAoB9C,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { SubjectId } from "../Schema.mjs";
|
|
2
|
+
import { IdentityUnavailable } from "./models.mjs";
|
|
3
|
+
import { Context, Effect, Schema } from "effect";
|
|
4
|
+
//#region src/identity/SubjectLifecycle.d.ts
|
|
5
|
+
declare const InvalidationUnsupported_base: Schema.Class<InvalidationUnsupported, Schema.TaggedStruct<"InvalidationUnsupported", {}>, import("effect/Cause").YieldableError>;
|
|
6
|
+
declare class InvalidationUnsupported extends InvalidationUnsupported_base {}
|
|
7
|
+
declare const ImmediatelyInvalidated_base: Schema.Class<ImmediatelyInvalidated, Schema.TaggedStruct<"ImmediatelyInvalidated", {}>, {}>;
|
|
8
|
+
/** No issued bearer remains valid for this subject after the commit. */
|
|
9
|
+
declare class ImmediatelyInvalidated extends ImmediatelyInvalidated_base {}
|
|
10
|
+
declare const ExpiresBy_base: Schema.Class<ExpiresBy, Schema.TaggedStruct<"ExpiresBy", {
|
|
11
|
+
readonly instant: Schema.DateTimeUtcFromMillis;
|
|
12
|
+
}>, {}>;
|
|
13
|
+
/**
|
|
14
|
+
* Pure stateless verification may accept old tokens until this instant. The
|
|
15
|
+
* adapter must prevent fresh primary authentication. Any stateless renewal of
|
|
16
|
+
* an existing token must remain bounded by this same instant, not extend it.
|
|
17
|
+
*/
|
|
18
|
+
declare class ExpiresBy extends ExpiresBy_base {}
|
|
19
|
+
declare const SubjectInvalidation: Schema.Union<readonly [typeof ImmediatelyInvalidated, typeof ExpiresBy]>;
|
|
20
|
+
declare const SubjectCleanupComplete_base: Schema.Class<SubjectCleanupComplete, Schema.TaggedStruct<"SubjectCleanupComplete", {
|
|
21
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
22
|
+
readonly invalidation: Schema.Union<readonly [typeof ImmediatelyInvalidated, typeof ExpiresBy]>;
|
|
23
|
+
}>, {}>;
|
|
24
|
+
declare class SubjectCleanupComplete extends SubjectCleanupComplete_base {}
|
|
25
|
+
declare const SubjectCleanupPending_base: Schema.Class<SubjectCleanupPending, Schema.TaggedStruct<"SubjectCleanupPending", {
|
|
26
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
27
|
+
readonly invalidation: Schema.Union<readonly [typeof ImmediatelyInvalidated, typeof ExpiresBy]>;
|
|
28
|
+
readonly recoveryReference: Schema.brand<Schema.NonEmptyString, "effect-auth/RecoveryReference">;
|
|
29
|
+
}>, {}>;
|
|
30
|
+
/**
|
|
31
|
+
* The account is already blocked from new auth, but retained material in another
|
|
32
|
+
* authority still needs cleanup. The consumer retries using recoveryReference.
|
|
33
|
+
*/
|
|
34
|
+
declare class SubjectCleanupPending extends SubjectCleanupPending_base {}
|
|
35
|
+
declare const SubjectCleanupResult: Schema.Union<readonly [typeof SubjectCleanupComplete, typeof SubjectCleanupPending]>;
|
|
36
|
+
interface SubjectTerminationInput {
|
|
37
|
+
readonly subjectId: SubjectId;
|
|
38
|
+
readonly requestId: string;
|
|
39
|
+
readonly invalidation: "immediate" | "allow-expiry";
|
|
40
|
+
}
|
|
41
|
+
declare const SubjectLifecycle_base: Context.ServiceClass<SubjectLifecycle, "effect-auth/SubjectLifecycle", {
|
|
42
|
+
readonly disable: (input: SubjectTerminationInput) => Effect.Effect<typeof SubjectCleanupResult.Type, InvalidationUnsupported | IdentityUnavailable>;
|
|
43
|
+
readonly delete: (input: SubjectTerminationInput) => Effect.Effect<typeof SubjectCleanupResult.Type, InvalidationUnsupported | IdentityUnavailable>;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Consumer-selected coordination of account disable/delete, credential and
|
|
47
|
+
* proof cleanup, external token cleanup, and the session strategy's invalidation.
|
|
48
|
+
* Workspace membership, profile and billing data remain application-owned.
|
|
49
|
+
*
|
|
50
|
+
* Operations are idempotent by requestId. Validate requested invalidation before
|
|
51
|
+
* writes; a stateless composition must reject `immediate` unless the consumer
|
|
52
|
+
* provides state-assisted validity. No implementation may return Complete while
|
|
53
|
+
* enabled credential/proof/token stores still permit future authentication.
|
|
54
|
+
*/
|
|
55
|
+
declare class SubjectLifecycle extends SubjectLifecycle_base {}
|
|
56
|
+
//#endregion
|
|
57
|
+
export { ExpiresBy, ImmediatelyInvalidated, InvalidationUnsupported, SubjectCleanupComplete, SubjectCleanupPending, SubjectCleanupResult, SubjectInvalidation, SubjectLifecycle, SubjectTerminationInput };
|
|
58
|
+
//# sourceMappingURL=SubjectLifecycle.d.mts.map
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { SubjectId } from "../Schema.mjs";
|
|
2
|
+
import { RecoveryReference } from "./models.mjs";
|
|
3
|
+
import { Context, Schema } from "effect";
|
|
4
|
+
//#region src/identity/SubjectLifecycle.ts
|
|
5
|
+
var InvalidationUnsupported = class extends Schema.TaggedError()("InvalidationUnsupported", {}) {};
|
|
6
|
+
/** No issued bearer remains valid for this subject after the commit. */
|
|
7
|
+
var ImmediatelyInvalidated = class extends Schema.TaggedClass()("ImmediatelyInvalidated", {}) {};
|
|
8
|
+
/**
|
|
9
|
+
* Pure stateless verification may accept old tokens until this instant. The
|
|
10
|
+
* adapter must prevent fresh primary authentication. Any stateless renewal of
|
|
11
|
+
* an existing token must remain bounded by this same instant, not extend it.
|
|
12
|
+
*/
|
|
13
|
+
var ExpiresBy = class extends Schema.TaggedClass()("ExpiresBy", { instant: Schema.DateTimeUtcFromMillis }) {};
|
|
14
|
+
const SubjectInvalidation = Schema.Union([ImmediatelyInvalidated, ExpiresBy]);
|
|
15
|
+
var SubjectCleanupComplete = class extends Schema.TaggedClass()("SubjectCleanupComplete", {
|
|
16
|
+
subjectId: SubjectId,
|
|
17
|
+
invalidation: SubjectInvalidation
|
|
18
|
+
}) {};
|
|
19
|
+
/**
|
|
20
|
+
* The account is already blocked from new auth, but retained material in another
|
|
21
|
+
* authority still needs cleanup. The consumer retries using recoveryReference.
|
|
22
|
+
*/
|
|
23
|
+
var SubjectCleanupPending = class extends Schema.TaggedClass()("SubjectCleanupPending", {
|
|
24
|
+
subjectId: SubjectId,
|
|
25
|
+
invalidation: SubjectInvalidation,
|
|
26
|
+
recoveryReference: RecoveryReference
|
|
27
|
+
}) {};
|
|
28
|
+
const SubjectCleanupResult = Schema.Union([SubjectCleanupComplete, SubjectCleanupPending]);
|
|
29
|
+
/**
|
|
30
|
+
* Consumer-selected coordination of account disable/delete, credential and
|
|
31
|
+
* proof cleanup, external token cleanup, and the session strategy's invalidation.
|
|
32
|
+
* Workspace membership, profile and billing data remain application-owned.
|
|
33
|
+
*
|
|
34
|
+
* Operations are idempotent by requestId. Validate requested invalidation before
|
|
35
|
+
* writes; a stateless composition must reject `immediate` unless the consumer
|
|
36
|
+
* provides state-assisted validity. No implementation may return Complete while
|
|
37
|
+
* enabled credential/proof/token stores still permit future authentication.
|
|
38
|
+
*/
|
|
39
|
+
var SubjectLifecycle = class extends Context.Service()("effect-auth/SubjectLifecycle") {};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { ExpiresBy, ImmediatelyInvalidated, InvalidationUnsupported, SubjectCleanupComplete, SubjectCleanupPending, SubjectCleanupResult, SubjectInvalidation, SubjectLifecycle };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=SubjectLifecycle.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubjectLifecycle.mjs","names":[],"sources":["../../src/identity/SubjectLifecycle.ts"],"sourcesContent":["import { Context, type Effect, Schema } from \"effect\";\n\nimport { SubjectId } from \"../Schema\";\nimport { type IdentityUnavailable, RecoveryReference } from \"./models\";\n\nexport class InvalidationUnsupported extends Schema.TaggedError<InvalidationUnsupported>()(\n \"InvalidationUnsupported\",\n {},\n) {}\n\n/** No issued bearer remains valid for this subject after the commit. */\nexport class ImmediatelyInvalidated extends Schema.TaggedClass<ImmediatelyInvalidated>()(\n \"ImmediatelyInvalidated\",\n {},\n) {}\n\n/**\n * Pure stateless verification may accept old tokens until this instant. The\n * adapter must prevent fresh primary authentication. Any stateless renewal of\n * an existing token must remain bounded by this same instant, not extend it.\n */\nexport class ExpiresBy extends Schema.TaggedClass<ExpiresBy>()(\"ExpiresBy\", {\n instant: Schema.DateTimeUtcFromMillis,\n}) {}\n\nexport const SubjectInvalidation = Schema.Union([ImmediatelyInvalidated, ExpiresBy]);\n\nexport class SubjectCleanupComplete extends Schema.TaggedClass<SubjectCleanupComplete>()(\n \"SubjectCleanupComplete\",\n { subjectId: SubjectId, invalidation: SubjectInvalidation },\n) {}\n\n/**\n * The account is already blocked from new auth, but retained material in another\n * authority still needs cleanup. The consumer retries using recoveryReference.\n */\nexport class SubjectCleanupPending extends Schema.TaggedClass<SubjectCleanupPending>()(\n \"SubjectCleanupPending\",\n {\n subjectId: SubjectId,\n invalidation: SubjectInvalidation,\n recoveryReference: RecoveryReference,\n },\n) {}\n\nexport const SubjectCleanupResult = Schema.Union([SubjectCleanupComplete, SubjectCleanupPending]);\n\nexport interface SubjectTerminationInput {\n readonly subjectId: SubjectId;\n readonly requestId: string;\n readonly invalidation: \"immediate\" | \"allow-expiry\";\n}\n\n/**\n * Consumer-selected coordination of account disable/delete, credential and\n * proof cleanup, external token cleanup, and the session strategy's invalidation.\n * Workspace membership, profile and billing data remain application-owned.\n *\n * Operations are idempotent by requestId. Validate requested invalidation before\n * writes; a stateless composition must reject `immediate` unless the consumer\n * provides state-assisted validity. No implementation may return Complete while\n * enabled credential/proof/token stores still permit future authentication.\n */\nexport class SubjectLifecycle extends Context.Service<\n SubjectLifecycle,\n {\n readonly disable: (\n input: SubjectTerminationInput,\n ) => Effect.Effect<\n typeof SubjectCleanupResult.Type,\n InvalidationUnsupported | IdentityUnavailable\n >;\n readonly delete: (\n input: SubjectTerminationInput,\n ) => Effect.Effect<\n typeof SubjectCleanupResult.Type,\n InvalidationUnsupported | IdentityUnavailable\n >;\n }\n>()(\"effect-auth/SubjectLifecycle\") {}\n"],"mappings":";;;;AAKA,IAAa,0BAAb,cAA6C,OAAO,YAAqC,CAAC,CACxF,2BACA,CAAC,CACH,CAAC,CAAC,CAAC;;AAGH,IAAa,yBAAb,cAA4C,OAAO,YAAoC,CAAC,CACtF,0BACA,CAAC,CACH,CAAC,CAAC,CAAC;;;;;;AAOH,IAAa,YAAb,cAA+B,OAAO,YAAuB,CAAC,CAAC,aAAa,EAC1E,SAAS,OAAO,sBAClB,CAAC,CAAC,CAAC,CAAC;AAEJ,MAAa,sBAAsB,OAAO,MAAM,CAAC,wBAAwB,SAAS,CAAC;AAEnF,IAAa,yBAAb,cAA4C,OAAO,YAAoC,CAAC,CACtF,0BACA;CAAE,WAAW;CAAW,cAAc;AAAoB,CAC5D,CAAC,CAAC,CAAC;;;;;AAMH,IAAa,wBAAb,cAA2C,OAAO,YAAmC,CAAC,CACpF,yBACA;CACE,WAAW;CACX,cAAc;CACd,mBAAmB;AACrB,CACF,CAAC,CAAC,CAAC;AAEH,MAAa,uBAAuB,OAAO,MAAM,CAAC,wBAAwB,qBAAqB,CAAC;;;;;;;;;;;AAkBhG,IAAa,mBAAb,cAAsC,QAAQ,QAgB5C,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { IdentityConflict, IdentityUnavailable, LoginIdentifier, ProvisioningResult } from "./models.mjs";
|
|
2
|
+
import { Context, DateTime, Effect } from "effect";
|
|
3
|
+
//#region src/identity/SubjectProvisioner.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Trusted method input after its registration proof/policy has been checked.
|
|
6
|
+
* This is a service input, never a remotely exposed registration payload.
|
|
7
|
+
* Omit verifiedAt for password-only registration with an unverified identifier.
|
|
8
|
+
*/
|
|
9
|
+
type SubjectProvisioningInput = {
|
|
10
|
+
readonly requestId: string;
|
|
11
|
+
} & ({
|
|
12
|
+
readonly identifier?: never;
|
|
13
|
+
readonly verifiedAt?: never;
|
|
14
|
+
} | {
|
|
15
|
+
readonly identifier: LoginIdentifier;
|
|
16
|
+
readonly verifiedAt?: DateTime.Utc;
|
|
17
|
+
});
|
|
18
|
+
declare const SubjectProvisioner_base: Context.ServiceClass<SubjectProvisioner, "effect-auth/SubjectProvisioner", {
|
|
19
|
+
readonly provision: (input: SubjectProvisioningInput) => Effect.Effect<ProvisioningResult, IdentityConflict | IdentityUnavailable>;
|
|
20
|
+
}>;
|
|
21
|
+
/**
|
|
22
|
+
* Application authority for subject creation and initial identifier binding.
|
|
23
|
+
*
|
|
24
|
+
* Repeating a requestId with the same input must resolve the same subject;
|
|
25
|
+
* repeating it with different input must fail. Identifier uniqueness and
|
|
26
|
+
* provisioning commit together when they share an authority. Cross-authority
|
|
27
|
+
* implementations return ProvisioningPending until reconciliation is complete,
|
|
28
|
+
* never an authenticated result for a partially provisioned account.
|
|
29
|
+
*
|
|
30
|
+
* This port does not create a session or bind method-specific credentials. The
|
|
31
|
+
* method's registration coordinator owns that atomic boundary (or exposes its
|
|
32
|
+
* pending recovery outcome) before it can issue an authenticated result.
|
|
33
|
+
*/
|
|
34
|
+
declare class SubjectProvisioner extends SubjectProvisioner_base {}
|
|
35
|
+
//#endregion
|
|
36
|
+
export { SubjectProvisioner, SubjectProvisioningInput };
|
|
37
|
+
//# sourceMappingURL=SubjectProvisioner.d.mts.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Context } from "effect";
|
|
2
|
+
//#region src/identity/SubjectProvisioner.ts
|
|
3
|
+
/**
|
|
4
|
+
* Application authority for subject creation and initial identifier binding.
|
|
5
|
+
*
|
|
6
|
+
* Repeating a requestId with the same input must resolve the same subject;
|
|
7
|
+
* repeating it with different input must fail. Identifier uniqueness and
|
|
8
|
+
* provisioning commit together when they share an authority. Cross-authority
|
|
9
|
+
* implementations return ProvisioningPending until reconciliation is complete,
|
|
10
|
+
* never an authenticated result for a partially provisioned account.
|
|
11
|
+
*
|
|
12
|
+
* This port does not create a session or bind method-specific credentials. The
|
|
13
|
+
* method's registration coordinator owns that atomic boundary (or exposes its
|
|
14
|
+
* pending recovery outcome) before it can issue an authenticated result.
|
|
15
|
+
*/
|
|
16
|
+
var SubjectProvisioner = class extends Context.Service()("effect-auth/SubjectProvisioner") {};
|
|
17
|
+
//#endregion
|
|
18
|
+
export { SubjectProvisioner };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=SubjectProvisioner.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubjectProvisioner.mjs","names":[],"sources":["../../src/identity/SubjectProvisioner.ts"],"sourcesContent":["import { Context, type DateTime, type Effect } from \"effect\";\n\nimport type {\n IdentityConflict,\n IdentityUnavailable,\n LoginIdentifier,\n ProvisioningResult,\n} from \"./models\";\n\n/**\n * Trusted method input after its registration proof/policy has been checked.\n * This is a service input, never a remotely exposed registration payload.\n * Omit verifiedAt for password-only registration with an unverified identifier.\n */\nexport type SubjectProvisioningInput = { readonly requestId: string } & (\n | { readonly identifier?: never; readonly verifiedAt?: never }\n | { readonly identifier: LoginIdentifier; readonly verifiedAt?: DateTime.Utc }\n);\n\n/**\n * Application authority for subject creation and initial identifier binding.\n *\n * Repeating a requestId with the same input must resolve the same subject;\n * repeating it with different input must fail. Identifier uniqueness and\n * provisioning commit together when they share an authority. Cross-authority\n * implementations return ProvisioningPending until reconciliation is complete,\n * never an authenticated result for a partially provisioned account.\n *\n * This port does not create a session or bind method-specific credentials. The\n * method's registration coordinator owns that atomic boundary (or exposes its\n * pending recovery outcome) before it can issue an authenticated result.\n */\nexport class SubjectProvisioner extends Context.Service<\n SubjectProvisioner,\n {\n readonly provision: (\n input: SubjectProvisioningInput,\n ) => Effect.Effect<ProvisioningResult, IdentityConflict | IdentityUnavailable>;\n }\n>()(\"effect-auth/SubjectProvisioner\") {}\n"],"mappings":";;;;;;;;;;;;;;;AAgCA,IAAa,qBAAb,cAAwC,QAAQ,QAO9C,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Effect, Schema } from "effect";
|
|
2
|
+
//#region src/identity/codecs.d.ts
|
|
3
|
+
declare const IdentityCodecError_base: Schema.Class<IdentityCodecError, Schema.TaggedStruct<"IdentityCodecError", {
|
|
4
|
+
readonly reason: Schema.Literals<readonly ["invalid-key", "lossy-key"]>;
|
|
5
|
+
}>, import("effect/Cause").YieldableError>;
|
|
6
|
+
/** Adapter failures deliberately omit the native key and rejected wire input. */
|
|
7
|
+
declare class IdentityCodecError extends IdentityCodecError_base {}
|
|
8
|
+
/**
|
|
9
|
+
* A consumer's native key remains native in its database. Only the auth boundary
|
|
10
|
+
* uses SubjectId. Neither direction may silently normalize or truncate a key.
|
|
11
|
+
* ID generation belongs to the consumer, including database-generated keys.
|
|
12
|
+
*/
|
|
13
|
+
declare const subjectIdCodec: <A>(schema: Schema.Codec<A, string>) => {
|
|
14
|
+
readonly toNative: (subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">) => Effect.Effect<A, IdentityCodecError, never>;
|
|
15
|
+
readonly toSubject: (native: A) => Effect.Effect<string & import("effect/Brand").Brand<"effect-auth/SubjectId">, IdentityCodecError, never>;
|
|
16
|
+
};
|
|
17
|
+
/** Keeps the consumer's UUID version, spelling, and database column unchanged. */
|
|
18
|
+
declare const stringSubjectId: {
|
|
19
|
+
readonly toNative: (subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">) => Effect.Effect<string, IdentityCodecError, never>;
|
|
20
|
+
readonly toSubject: (native: string) => Effect.Effect<string & import("effect/Brand").Brand<"effect-auth/SubjectId">, IdentityCodecError, never>;
|
|
21
|
+
};
|
|
22
|
+
/** Rejects unsafe JS integers and noncanonical aliases such as `01` and `1e2`. */
|
|
23
|
+
declare const numericSubjectId: {
|
|
24
|
+
readonly toNative: (subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">) => Effect.Effect<number, IdentityCodecError, never>;
|
|
25
|
+
readonly toSubject: (native: number) => Effect.Effect<string & import("effect/Brand").Brand<"effect-auth/SubjectId">, IdentityCodecError, never>;
|
|
26
|
+
};
|
|
27
|
+
/** Use for SQL bigint keys that exceed JavaScript's safe integer range. */
|
|
28
|
+
declare const bigintSubjectId: {
|
|
29
|
+
readonly toNative: (subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">) => Effect.Effect<bigint, IdentityCodecError, never>;
|
|
30
|
+
readonly toSubject: (native: bigint) => Effect.Effect<string & import("effect/Brand").Brand<"effect-auth/SubjectId">, IdentityCodecError, never>;
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
export { IdentityCodecError, bigintSubjectId, numericSubjectId, stringSubjectId, subjectIdCodec };
|
|
34
|
+
//# sourceMappingURL=codecs.d.mts.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { SubjectId } from "../Schema.mjs";
|
|
2
|
+
import { Effect, Schema } from "effect";
|
|
3
|
+
//#region src/identity/codecs.ts
|
|
4
|
+
/** Adapter failures deliberately omit the native key and rejected wire input. */
|
|
5
|
+
var IdentityCodecError = class extends Schema.TaggedError()("IdentityCodecError", { reason: Schema.Literals(["invalid-key", "lossy-key"]) }) {};
|
|
6
|
+
/**
|
|
7
|
+
* A consumer's native key remains native in its database. Only the auth boundary
|
|
8
|
+
* uses SubjectId. Neither direction may silently normalize or truncate a key.
|
|
9
|
+
* ID generation belongs to the consumer, including database-generated keys.
|
|
10
|
+
*/
|
|
11
|
+
const subjectIdCodec = (schema) => {
|
|
12
|
+
const decode = Schema.decodeEffect(schema);
|
|
13
|
+
const encode = Schema.encodeEffect(schema);
|
|
14
|
+
const decodeSubject = Schema.decodeEffect(SubjectId);
|
|
15
|
+
const equivalent = Schema.toEquivalence(schema);
|
|
16
|
+
const invalid = () => IdentityCodecError.make({ reason: "invalid-key" });
|
|
17
|
+
return {
|
|
18
|
+
toNative: Effect.fn("subjectIdCodec.toNative")(function* (subjectId) {
|
|
19
|
+
const native = yield* decode(subjectId).pipe(Effect.mapError(invalid));
|
|
20
|
+
if ((yield* encode(native).pipe(Effect.mapError(invalid))) !== subjectId) return yield* IdentityCodecError.make({ reason: "lossy-key" });
|
|
21
|
+
return native;
|
|
22
|
+
}),
|
|
23
|
+
toSubject: Effect.fn("subjectIdCodec.toSubject")(function* (native) {
|
|
24
|
+
const wire = yield* encode(native).pipe(Effect.mapError(invalid));
|
|
25
|
+
const roundTrip = yield* decode(wire).pipe(Effect.mapError(invalid));
|
|
26
|
+
if (!equivalent(native, roundTrip)) return yield* IdentityCodecError.make({ reason: "lossy-key" });
|
|
27
|
+
return yield* decodeSubject(wire).pipe(Effect.mapError(invalid));
|
|
28
|
+
})
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
/** Keeps the consumer's UUID version, spelling, and database column unchanged. */
|
|
32
|
+
const stringSubjectId = subjectIdCodec(Schema.NonEmptyString);
|
|
33
|
+
/** Rejects unsafe JS integers and noncanonical aliases such as `01` and `1e2`. */
|
|
34
|
+
const numericSubjectId = subjectIdCodec(Schema.FiniteFromString.check(Schema.isInt()));
|
|
35
|
+
/** Use for SQL bigint keys that exceed JavaScript's safe integer range. */
|
|
36
|
+
const bigintSubjectId = subjectIdCodec(Schema.BigIntFromString);
|
|
37
|
+
//#endregion
|
|
38
|
+
export { IdentityCodecError, bigintSubjectId, numericSubjectId, stringSubjectId, subjectIdCodec };
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=codecs.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codecs.mjs","names":[],"sources":["../../src/identity/codecs.ts"],"sourcesContent":["import { Effect, Schema } from \"effect\";\n\nimport { SubjectId } from \"../Schema\";\n\n/** Adapter failures deliberately omit the native key and rejected wire input. */\nexport class IdentityCodecError extends Schema.TaggedError<IdentityCodecError>()(\n \"IdentityCodecError\",\n { reason: Schema.Literals([\"invalid-key\", \"lossy-key\"]) },\n) {}\n\n/**\n * A consumer's native key remains native in its database. Only the auth boundary\n * uses SubjectId. Neither direction may silently normalize or truncate a key.\n * ID generation belongs to the consumer, including database-generated keys.\n */\nexport const subjectIdCodec = <A>(schema: Schema.Codec<A, string>) => {\n const decode = Schema.decodeEffect(schema);\n const encode = Schema.encodeEffect(schema);\n const decodeSubject = Schema.decodeEffect(SubjectId);\n const equivalent = Schema.toEquivalence(schema);\n const invalid = () => IdentityCodecError.make({ reason: \"invalid-key\" });\n\n return {\n toNative: Effect.fn(\"subjectIdCodec.toNative\")(function* (subjectId: SubjectId) {\n const native = yield* decode(subjectId).pipe(Effect.mapError(invalid));\n const roundTrip = yield* encode(native).pipe(Effect.mapError(invalid));\n\n if (roundTrip !== subjectId) {\n return yield* IdentityCodecError.make({ reason: \"lossy-key\" });\n }\n\n return native;\n }),\n toSubject: Effect.fn(\"subjectIdCodec.toSubject\")(function* (native: A) {\n const wire = yield* encode(native).pipe(Effect.mapError(invalid));\n const roundTrip = yield* decode(wire).pipe(Effect.mapError(invalid));\n\n if (!equivalent(native, roundTrip)) {\n return yield* IdentityCodecError.make({ reason: \"lossy-key\" });\n }\n\n return yield* decodeSubject(wire).pipe(Effect.mapError(invalid));\n }),\n } as const;\n};\n\n/** Keeps the consumer's UUID version, spelling, and database column unchanged. */\nexport const stringSubjectId = subjectIdCodec(Schema.NonEmptyString);\n\n/** Rejects unsafe JS integers and noncanonical aliases such as `01` and `1e2`. */\nexport const numericSubjectId = subjectIdCodec(Schema.FiniteFromString.check(Schema.isInt()));\n\n/** Use for SQL bigint keys that exceed JavaScript's safe integer range. */\nexport const bigintSubjectId = subjectIdCodec(Schema.BigIntFromString);\n"],"mappings":";;;;AAKA,IAAa,qBAAb,cAAwC,OAAO,YAAgC,CAAC,CAC9E,sBACA,EAAE,QAAQ,OAAO,SAAS,CAAC,eAAe,WAAW,CAAC,EAAE,CAC1D,CAAC,CAAC,CAAC;;;;;;AAOH,MAAa,kBAAqB,WAAoC;CACpE,MAAM,SAAS,OAAO,aAAa,MAAM;CACzC,MAAM,SAAS,OAAO,aAAa,MAAM;CACzC,MAAM,gBAAgB,OAAO,aAAa,SAAS;CACnD,MAAM,aAAa,OAAO,cAAc,MAAM;CAC9C,MAAM,gBAAgB,mBAAmB,KAAK,EAAE,QAAQ,cAAc,CAAC;CAEvE,OAAO;EACL,UAAU,OAAO,GAAG,yBAAyB,CAAC,CAAC,WAAW,WAAsB;GAC9E,MAAM,SAAS,OAAO,OAAO,SAAS,CAAC,CAAC,KAAK,OAAO,SAAS,OAAO,CAAC;GAGrE,KAAI,OAFqB,OAAO,MAAM,CAAC,CAAC,KAAK,OAAO,SAAS,OAAO,CAAC,OAEnD,WAChB,OAAO,OAAO,mBAAmB,KAAK,EAAE,QAAQ,YAAY,CAAC;GAG/D,OAAO;EACT,CAAC;EACD,WAAW,OAAO,GAAG,0BAA0B,CAAC,CAAC,WAAW,QAAW;GACrE,MAAM,OAAO,OAAO,OAAO,MAAM,CAAC,CAAC,KAAK,OAAO,SAAS,OAAO,CAAC;GAChE,MAAM,YAAY,OAAO,OAAO,IAAI,CAAC,CAAC,KAAK,OAAO,SAAS,OAAO,CAAC;GAEnE,IAAI,CAAC,WAAW,QAAQ,SAAS,GAC/B,OAAO,OAAO,mBAAmB,KAAK,EAAE,QAAQ,YAAY,CAAC;GAG/D,OAAO,OAAO,cAAc,IAAI,CAAC,CAAC,KAAK,OAAO,SAAS,OAAO,CAAC;EACjE,CAAC;CACH;AACF;;AAGA,MAAa,kBAAkB,eAAe,OAAO,cAAc;;AAGnE,MAAa,mBAAmB,eAAe,OAAO,iBAAiB,MAAM,OAAO,MAAM,CAAC,CAAC;;AAG5F,MAAa,kBAAkB,eAAe,OAAO,gBAAgB"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
//#region src/identity/models.d.ts
|
|
3
|
+
declare const LoginIdentifier_base: Schema.Class<LoginIdentifier, Schema.Struct<{
|
|
4
|
+
readonly namespace: Schema.NonEmptyString;
|
|
5
|
+
readonly value: Schema.NonEmptyString;
|
|
6
|
+
}>, {}>;
|
|
7
|
+
/** Namespace and normalization are supplied by the method/consumer, not email. */
|
|
8
|
+
declare class LoginIdentifier extends LoginIdentifier_base {}
|
|
9
|
+
declare const ExternalIdentity_base: Schema.Class<ExternalIdentity, Schema.Struct<{
|
|
10
|
+
readonly provider: Schema.NonEmptyString;
|
|
11
|
+
readonly issuer: Schema.NonEmptyString;
|
|
12
|
+
readonly subject: Schema.NonEmptyString;
|
|
13
|
+
}>, {}>;
|
|
14
|
+
/** Stable provider identity. Matching profile email addresses do not imply a link. */
|
|
15
|
+
declare class ExternalIdentity extends ExternalIdentity_base {}
|
|
16
|
+
/** A non-secret reference; never a bearer credential or a recovery code. */
|
|
17
|
+
declare const CredentialId: Schema.brand<Schema.NonEmptyString, "effect-auth/CredentialId">;
|
|
18
|
+
type CredentialId = typeof CredentialId.Type;
|
|
19
|
+
declare const IdentifierBinding_base: Schema.Class<IdentifierBinding, Schema.Struct<{
|
|
20
|
+
readonly identifier: typeof LoginIdentifier;
|
|
21
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
22
|
+
readonly verifiedAt: Schema.Option<Schema.DateTimeUtcFromMillis>;
|
|
23
|
+
}>, {}>;
|
|
24
|
+
declare class IdentifierBinding extends IdentifierBinding_base {}
|
|
25
|
+
declare const CredentialSummary_base: Schema.Class<CredentialSummary, Schema.Struct<{
|
|
26
|
+
readonly id: Schema.brand<Schema.NonEmptyString, "effect-auth/CredentialId">;
|
|
27
|
+
readonly method: Schema.NonEmptyString;
|
|
28
|
+
readonly createdAt: Schema.DateTimeUtcFromMillis;
|
|
29
|
+
/** A second factor by itself must not count as a remaining sign-in method. */
|
|
30
|
+
readonly usableForSignIn: Schema.Boolean;
|
|
31
|
+
}>, {}>;
|
|
32
|
+
declare class CredentialSummary extends CredentialSummary_base {}
|
|
33
|
+
declare const SubjectSnapshot_base: Schema.Class<SubjectSnapshot, Schema.Struct<{
|
|
34
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
35
|
+
readonly status: Schema.Literals<readonly ["active", "disabled", "deleting"]>;
|
|
36
|
+
}>, {}>;
|
|
37
|
+
declare class SubjectSnapshot extends SubjectSnapshot_base {}
|
|
38
|
+
/** Consumer-owned reconciliation key; not a token that grants authentication. */
|
|
39
|
+
declare const RecoveryReference: Schema.brand<Schema.NonEmptyString, "effect-auth/RecoveryReference">;
|
|
40
|
+
declare const SubjectProvisioned_base: Schema.Class<SubjectProvisioned, Schema.TaggedStruct<"SubjectProvisioned", {
|
|
41
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
42
|
+
}>, {}>;
|
|
43
|
+
declare class SubjectProvisioned extends SubjectProvisioned_base {}
|
|
44
|
+
declare const ProvisioningPending_base: Schema.Class<ProvisioningPending, Schema.TaggedStruct<"ProvisioningPending", {
|
|
45
|
+
readonly recoveryReference: Schema.brand<Schema.NonEmptyString, "effect-auth/RecoveryReference">;
|
|
46
|
+
}>, {}>;
|
|
47
|
+
/** No session may be issued until the consumer resolves this outcome. */
|
|
48
|
+
declare class ProvisioningPending extends ProvisioningPending_base {}
|
|
49
|
+
declare const ProvisioningResult: Schema.Union<readonly [typeof SubjectProvisioned, typeof ProvisioningPending]>;
|
|
50
|
+
type ProvisioningResult = typeof ProvisioningResult.Type;
|
|
51
|
+
declare const IdentityConflict_base: Schema.Class<IdentityConflict, Schema.TaggedStruct<"IdentityConflict", {}>, import("effect/Cause").YieldableError>;
|
|
52
|
+
/** Expected identity failures contain no identifier value or database diagnostics. */
|
|
53
|
+
declare class IdentityConflict extends IdentityConflict_base {}
|
|
54
|
+
declare const IdentityUnavailable_base: Schema.Class<IdentityUnavailable, Schema.TaggedStruct<"IdentityUnavailable", {}>, import("effect/Cause").YieldableError>;
|
|
55
|
+
declare class IdentityUnavailable extends IdentityUnavailable_base {}
|
|
56
|
+
declare const LastSignInMethod_base: Schema.Class<LastSignInMethod, Schema.TaggedStruct<"LastSignInMethod", {}>, import("effect/Cause").YieldableError>;
|
|
57
|
+
declare class LastSignInMethod extends LastSignInMethod_base {}
|
|
58
|
+
declare const SubjectInactive_base: Schema.Class<SubjectInactive, Schema.TaggedStruct<"SubjectInactive", {}>, import("effect/Cause").YieldableError>;
|
|
59
|
+
declare class SubjectInactive extends SubjectInactive_base {}
|
|
60
|
+
//#endregion
|
|
61
|
+
export { CredentialId, CredentialSummary, ExternalIdentity, IdentifierBinding, IdentityConflict, IdentityUnavailable, LastSignInMethod, LoginIdentifier, ProvisioningPending, ProvisioningResult, RecoveryReference, SubjectInactive, SubjectProvisioned, SubjectSnapshot };
|
|
62
|
+
//# sourceMappingURL=models.d.mts.map
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { SubjectId } from "../Schema.mjs";
|
|
2
|
+
import { Schema } from "effect";
|
|
3
|
+
//#region src/identity/models.ts
|
|
4
|
+
/** Namespace and normalization are supplied by the method/consumer, not email. */
|
|
5
|
+
var LoginIdentifier = class extends Schema.Class("effect-auth/LoginIdentifier")({
|
|
6
|
+
namespace: Schema.NonEmptyString,
|
|
7
|
+
value: Schema.NonEmptyString
|
|
8
|
+
}) {};
|
|
9
|
+
/** Stable provider identity. Matching profile email addresses do not imply a link. */
|
|
10
|
+
var ExternalIdentity = class extends Schema.Class("effect-auth/ExternalIdentity")({
|
|
11
|
+
provider: Schema.NonEmptyString,
|
|
12
|
+
issuer: Schema.NonEmptyString,
|
|
13
|
+
subject: Schema.NonEmptyString
|
|
14
|
+
}) {};
|
|
15
|
+
/** A non-secret reference; never a bearer credential or a recovery code. */
|
|
16
|
+
const CredentialId = Schema.NonEmptyString.pipe(Schema.brand("effect-auth/CredentialId"));
|
|
17
|
+
var IdentifierBinding = class extends Schema.Class("effect-auth/IdentifierBinding")({
|
|
18
|
+
identifier: LoginIdentifier,
|
|
19
|
+
subjectId: SubjectId,
|
|
20
|
+
verifiedAt: Schema.Option(Schema.DateTimeUtcFromMillis)
|
|
21
|
+
}) {};
|
|
22
|
+
var CredentialSummary = class extends Schema.Class("effect-auth/CredentialSummary")({
|
|
23
|
+
id: CredentialId,
|
|
24
|
+
method: Schema.NonEmptyString,
|
|
25
|
+
createdAt: Schema.DateTimeUtcFromMillis,
|
|
26
|
+
/** A second factor by itself must not count as a remaining sign-in method. */
|
|
27
|
+
usableForSignIn: Schema.Boolean
|
|
28
|
+
}) {};
|
|
29
|
+
var SubjectSnapshot = class extends Schema.Class("effect-auth/SubjectSnapshot")({
|
|
30
|
+
subjectId: SubjectId,
|
|
31
|
+
status: Schema.Literals([
|
|
32
|
+
"active",
|
|
33
|
+
"disabled",
|
|
34
|
+
"deleting"
|
|
35
|
+
])
|
|
36
|
+
}) {};
|
|
37
|
+
/** Consumer-owned reconciliation key; not a token that grants authentication. */
|
|
38
|
+
const RecoveryReference = Schema.NonEmptyString.pipe(Schema.brand("effect-auth/RecoveryReference"));
|
|
39
|
+
var SubjectProvisioned = class extends Schema.TaggedClass()("SubjectProvisioned", { subjectId: SubjectId }) {};
|
|
40
|
+
/** No session may be issued until the consumer resolves this outcome. */
|
|
41
|
+
var ProvisioningPending = class extends Schema.TaggedClass()("ProvisioningPending", { recoveryReference: RecoveryReference }) {};
|
|
42
|
+
const ProvisioningResult = Schema.Union([SubjectProvisioned, ProvisioningPending]);
|
|
43
|
+
/** Expected identity failures contain no identifier value or database diagnostics. */
|
|
44
|
+
var IdentityConflict = class extends Schema.TaggedError()("IdentityConflict", {}) {};
|
|
45
|
+
var IdentityUnavailable = class extends Schema.TaggedError()("IdentityUnavailable", {}) {};
|
|
46
|
+
var LastSignInMethod = class extends Schema.TaggedError()("LastSignInMethod", {}) {};
|
|
47
|
+
var SubjectInactive = class extends Schema.TaggedError()("SubjectInactive", {}) {};
|
|
48
|
+
//#endregion
|
|
49
|
+
export { CredentialId, CredentialSummary, ExternalIdentity, IdentifierBinding, IdentityConflict, IdentityUnavailable, LastSignInMethod, LoginIdentifier, ProvisioningPending, ProvisioningResult, RecoveryReference, SubjectInactive, SubjectProvisioned, SubjectSnapshot };
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=models.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models.mjs","names":[],"sources":["../../src/identity/models.ts"],"sourcesContent":["import { Schema } from \"effect\";\n\nimport { SubjectId } from \"../Schema\";\n\n/** Namespace and normalization are supplied by the method/consumer, not email. */\nexport class LoginIdentifier extends Schema.Class<LoginIdentifier>(\"effect-auth/LoginIdentifier\")({\n namespace: Schema.NonEmptyString,\n value: Schema.NonEmptyString,\n}) {}\n\n/** Stable provider identity. Matching profile email addresses do not imply a link. */\nexport class ExternalIdentity extends Schema.Class<ExternalIdentity>(\n \"effect-auth/ExternalIdentity\",\n)({\n provider: Schema.NonEmptyString,\n issuer: Schema.NonEmptyString,\n subject: Schema.NonEmptyString,\n}) {}\n\n/** A non-secret reference; never a bearer credential or a recovery code. */\nexport const CredentialId = Schema.NonEmptyString.pipe(Schema.brand(\"effect-auth/CredentialId\"));\nexport type CredentialId = typeof CredentialId.Type;\n\nexport class IdentifierBinding extends Schema.Class<IdentifierBinding>(\n \"effect-auth/IdentifierBinding\",\n)({\n identifier: LoginIdentifier,\n subjectId: SubjectId,\n verifiedAt: Schema.Option(Schema.DateTimeUtcFromMillis),\n}) {}\n\nexport class CredentialSummary extends Schema.Class<CredentialSummary>(\n \"effect-auth/CredentialSummary\",\n)({\n id: CredentialId,\n method: Schema.NonEmptyString,\n createdAt: Schema.DateTimeUtcFromMillis,\n /** A second factor by itself must not count as a remaining sign-in method. */\n usableForSignIn: Schema.Boolean,\n}) {}\n\nexport class SubjectSnapshot extends Schema.Class<SubjectSnapshot>(\"effect-auth/SubjectSnapshot\")({\n subjectId: SubjectId,\n status: Schema.Literals([\"active\", \"disabled\", \"deleting\"]),\n}) {}\n\n/** Consumer-owned reconciliation key; not a token that grants authentication. */\nexport const RecoveryReference = Schema.NonEmptyString.pipe(\n Schema.brand(\"effect-auth/RecoveryReference\"),\n);\n\nexport class SubjectProvisioned extends Schema.TaggedClass<SubjectProvisioned>()(\n \"SubjectProvisioned\",\n { subjectId: SubjectId },\n) {}\n\n/** No session may be issued until the consumer resolves this outcome. */\nexport class ProvisioningPending extends Schema.TaggedClass<ProvisioningPending>()(\n \"ProvisioningPending\",\n { recoveryReference: RecoveryReference },\n) {}\n\nexport const ProvisioningResult = Schema.Union([SubjectProvisioned, ProvisioningPending]);\nexport type ProvisioningResult = typeof ProvisioningResult.Type;\n\n/** Expected identity failures contain no identifier value or database diagnostics. */\nexport class IdentityConflict extends Schema.TaggedError<IdentityConflict>()(\n \"IdentityConflict\",\n {},\n) {}\n\nexport class IdentityUnavailable extends Schema.TaggedError<IdentityUnavailable>()(\n \"IdentityUnavailable\",\n {},\n) {}\n\nexport class LastSignInMethod extends Schema.TaggedError<LastSignInMethod>()(\n \"LastSignInMethod\",\n {},\n) {}\n\nexport class SubjectInactive extends Schema.TaggedError<SubjectInactive>()(\"SubjectInactive\", {}) {}\n"],"mappings":";;;;AAKA,IAAa,kBAAb,cAAqC,OAAO,MAAuB,6BAA6B,CAAC,CAAC;CAChG,WAAW,OAAO;CAClB,OAAO,OAAO;AAChB,CAAC,CAAC,CAAC,CAAC;;AAGJ,IAAa,mBAAb,cAAsC,OAAO,MAC3C,8BACF,CAAC,CAAC;CACA,UAAU,OAAO;CACjB,QAAQ,OAAO;CACf,SAAS,OAAO;AAClB,CAAC,CAAC,CAAC,CAAC;;AAGJ,MAAa,eAAe,OAAO,eAAe,KAAK,OAAO,MAAM,0BAA0B,CAAC;AAG/F,IAAa,oBAAb,cAAuC,OAAO,MAC5C,+BACF,CAAC,CAAC;CACA,YAAY;CACZ,WAAW;CACX,YAAY,OAAO,OAAO,OAAO,qBAAqB;AACxD,CAAC,CAAC,CAAC,CAAC;AAEJ,IAAa,oBAAb,cAAuC,OAAO,MAC5C,+BACF,CAAC,CAAC;CACA,IAAI;CACJ,QAAQ,OAAO;CACf,WAAW,OAAO;;CAElB,iBAAiB,OAAO;AAC1B,CAAC,CAAC,CAAC,CAAC;AAEJ,IAAa,kBAAb,cAAqC,OAAO,MAAuB,6BAA6B,CAAC,CAAC;CAChG,WAAW;CACX,QAAQ,OAAO,SAAS;EAAC;EAAU;EAAY;CAAU,CAAC;AAC5D,CAAC,CAAC,CAAC,CAAC;;AAGJ,MAAa,oBAAoB,OAAO,eAAe,KACrD,OAAO,MAAM,+BAA+B,CAC9C;AAEA,IAAa,qBAAb,cAAwC,OAAO,YAAgC,CAAC,CAC9E,sBACA,EAAE,WAAW,UAAU,CACzB,CAAC,CAAC,CAAC;;AAGH,IAAa,sBAAb,cAAyC,OAAO,YAAiC,CAAC,CAChF,uBACA,EAAE,mBAAmB,kBAAkB,CACzC,CAAC,CAAC,CAAC;AAEH,MAAa,qBAAqB,OAAO,MAAM,CAAC,oBAAoB,mBAAmB,CAAC;;AAIxF,IAAa,mBAAb,cAAsC,OAAO,YAA8B,CAAC,CAC1E,oBACA,CAAC,CACH,CAAC,CAAC,CAAC;AAEH,IAAa,sBAAb,cAAyC,OAAO,YAAiC,CAAC,CAChF,uBACA,CAAC,CACH,CAAC,CAAC,CAAC;AAEH,IAAa,mBAAb,cAAsC,OAAO,YAA8B,CAAC,CAC1E,oBACA,CAAC,CACH,CAAC,CAAC,CAAC;AAEH,IAAa,kBAAb,cAAqC,OAAO,YAA6B,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { AssuranceRequired, AuthenticationRequired, InvalidOperationInput, OperationForbidden, OperationPrivateOutputUnsupported } from "../operations/errors.mjs";
|
|
2
|
+
import { AssuranceRequirement, AuthInvocation } from "../operations/context.mjs";
|
|
3
|
+
import { AuthOperation, OperationHandler } from "../operations/operation.mjs";
|
|
4
|
+
import { CredentialSummary, IdentifierBinding, IdentityConflict, IdentityUnavailable, LastSignInMethod, LoginIdentifier, SubjectInactive, SubjectSnapshot } from "./models.mjs";
|
|
5
|
+
import "../Operations.mjs";
|
|
6
|
+
import "../Auth.mjs";
|
|
7
|
+
import { InvalidationUnsupported, SubjectCleanupComplete, SubjectCleanupPending, SubjectLifecycle } from "./SubjectLifecycle.mjs";
|
|
8
|
+
import { IdentityMutation } from "./IdentityMutation.mjs";
|
|
9
|
+
import { IdentityRepository } from "./IdentityRepository.mjs";
|
|
10
|
+
import { Effect, Layer, Schema } from "effect";
|
|
11
|
+
//#region src/identity/operations.d.ts
|
|
12
|
+
declare const InspectIdentity: AuthOperation<"identity.inspect", Schema.Void, typeof SubjectSnapshot, Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>, never, {
|
|
13
|
+
readonly payload: Schema.Void;
|
|
14
|
+
readonly success: typeof SubjectSnapshot;
|
|
15
|
+
readonly error: Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>;
|
|
16
|
+
readonly access: "authenticated";
|
|
17
|
+
readonly exposure: "public";
|
|
18
|
+
readonly replay: "read-only";
|
|
19
|
+
}>;
|
|
20
|
+
declare const ListIdentifiers: AuthOperation<"identity.listIdentifiers", Schema.Void, Schema.$Array<typeof IdentifierBinding>, Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>, never, {
|
|
21
|
+
readonly payload: Schema.Void;
|
|
22
|
+
readonly success: Schema.$Array<typeof IdentifierBinding>;
|
|
23
|
+
readonly error: Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>;
|
|
24
|
+
readonly access: "authenticated";
|
|
25
|
+
readonly exposure: "public";
|
|
26
|
+
readonly replay: "read-only";
|
|
27
|
+
}>;
|
|
28
|
+
declare const ListCredentials: AuthOperation<"identity.listCredentials", Schema.Void, Schema.$Array<typeof CredentialSummary>, Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>, never, {
|
|
29
|
+
readonly payload: Schema.Void;
|
|
30
|
+
readonly success: Schema.$Array<typeof CredentialSummary>;
|
|
31
|
+
readonly error: Schema.Union<readonly [typeof SubjectInactive, typeof IdentityUnavailable]>;
|
|
32
|
+
readonly access: "authenticated";
|
|
33
|
+
readonly exposure: "public";
|
|
34
|
+
readonly replay: "read-only";
|
|
35
|
+
}>;
|
|
36
|
+
declare const identityQueryLayer: Layer.Layer<OperationHandler<"identity.inspect", void, SubjectSnapshot, AssuranceRequired | AuthenticationRequired | IdentityUnavailable | InvalidOperationInput | OperationForbidden | OperationPrivateOutputUnsupported | SubjectInactive> | OperationHandler<"identity.listCredentials", void, readonly CredentialSummary[], AssuranceRequired | AuthenticationRequired | IdentityUnavailable | InvalidOperationInput | OperationForbidden | OperationPrivateOutputUnsupported | SubjectInactive> | OperationHandler<"identity.listIdentifiers", void, readonly IdentifierBinding[], AssuranceRequired | AuthenticationRequired | IdentityUnavailable | InvalidOperationInput | OperationForbidden | OperationPrivateOutputUnsupported | SubjectInactive>, never, IdentityRepository>;
|
|
37
|
+
/** Configure the method/factor policy at the consumer's Layer composition boundary. */
|
|
38
|
+
declare const makeIdentityChanges: (assurance: AssuranceRequirement) => {
|
|
39
|
+
readonly RemoveIdentifier: AuthOperation<"identity.removeIdentifier", Schema.Struct<{
|
|
40
|
+
readonly identifier: typeof LoginIdentifier;
|
|
41
|
+
}>, Schema.Void, Schema.Union<readonly [typeof IdentityConflict, typeof LastSignInMethod, typeof SubjectInactive, typeof IdentityUnavailable]>, never, {
|
|
42
|
+
readonly payload: Schema.Struct<{
|
|
43
|
+
readonly identifier: typeof LoginIdentifier;
|
|
44
|
+
}>;
|
|
45
|
+
readonly success: Schema.Void;
|
|
46
|
+
readonly error: Schema.Union<readonly [typeof IdentityConflict, typeof LastSignInMethod, typeof SubjectInactive, typeof IdentityUnavailable]>;
|
|
47
|
+
readonly access: "authenticated";
|
|
48
|
+
readonly exposure: "public";
|
|
49
|
+
readonly replay: "non-idempotent";
|
|
50
|
+
readonly authorize: (_: {
|
|
51
|
+
readonly identifier: LoginIdentifier;
|
|
52
|
+
}, context: AuthInvocation) => Effect.Effect<void, AssuranceRequired | AuthenticationRequired, never>;
|
|
53
|
+
}>;
|
|
54
|
+
readonly RemoveCredential: AuthOperation<"identity.removeCredential", Schema.Struct<{
|
|
55
|
+
readonly credentialId: Schema.brand<Schema.NonEmptyString, "effect-auth/CredentialId">;
|
|
56
|
+
}>, Schema.Void, Schema.Union<readonly [typeof IdentityConflict, typeof LastSignInMethod, typeof SubjectInactive, typeof IdentityUnavailable]>, never, {
|
|
57
|
+
readonly payload: Schema.Struct<{
|
|
58
|
+
readonly credentialId: Schema.brand<Schema.NonEmptyString, "effect-auth/CredentialId">;
|
|
59
|
+
}>;
|
|
60
|
+
readonly success: Schema.Void;
|
|
61
|
+
readonly error: Schema.Union<readonly [typeof IdentityConflict, typeof LastSignInMethod, typeof SubjectInactive, typeof IdentityUnavailable]>;
|
|
62
|
+
readonly access: "authenticated";
|
|
63
|
+
readonly exposure: "public";
|
|
64
|
+
readonly replay: "non-idempotent";
|
|
65
|
+
readonly authorize: (_: {
|
|
66
|
+
readonly credentialId: string & import("effect/Brand").Brand<"effect-auth/CredentialId">;
|
|
67
|
+
}, context: AuthInvocation) => Effect.Effect<void, AssuranceRequired | AuthenticationRequired, never>;
|
|
68
|
+
}>;
|
|
69
|
+
readonly layer: Layer.Layer<OperationHandler<"identity.removeCredential", {
|
|
70
|
+
readonly credentialId: string & import("effect/Brand").Brand<"effect-auth/CredentialId">;
|
|
71
|
+
}, void, AssuranceRequired | AuthenticationRequired | IdentityConflict | IdentityUnavailable | InvalidOperationInput | LastSignInMethod | OperationForbidden | OperationPrivateOutputUnsupported | SubjectInactive> | OperationHandler<"identity.removeIdentifier", {
|
|
72
|
+
readonly identifier: LoginIdentifier;
|
|
73
|
+
}, void, AssuranceRequired | AuthenticationRequired | IdentityConflict | IdentityUnavailable | InvalidOperationInput | LastSignInMethod | OperationForbidden | OperationPrivateOutputUnsupported | SubjectInactive>, never, IdentityMutation>;
|
|
74
|
+
};
|
|
75
|
+
/** System operations have contracts without being implicitly network-exposed. */
|
|
76
|
+
declare const DisableSubject: AuthOperation<"identity.disableSubject", Schema.Struct<{
|
|
77
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
78
|
+
readonly requestId: Schema.NonEmptyString;
|
|
79
|
+
readonly invalidation: Schema.Literals<readonly ["immediate", "allow-expiry"]>;
|
|
80
|
+
}>, Schema.Union<readonly [typeof SubjectCleanupComplete, typeof SubjectCleanupPending]>, Schema.Union<readonly [typeof InvalidationUnsupported, typeof IdentityUnavailable]>, never, {
|
|
81
|
+
readonly payload: Schema.Struct<{
|
|
82
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
83
|
+
readonly requestId: Schema.NonEmptyString;
|
|
84
|
+
readonly invalidation: Schema.Literals<readonly ["immediate", "allow-expiry"]>;
|
|
85
|
+
}>;
|
|
86
|
+
readonly success: Schema.Union<readonly [typeof SubjectCleanupComplete, typeof SubjectCleanupPending]>;
|
|
87
|
+
readonly error: Schema.Union<readonly [typeof InvalidationUnsupported, typeof IdentityUnavailable]>;
|
|
88
|
+
readonly access: "system";
|
|
89
|
+
readonly replay: "idempotent";
|
|
90
|
+
}>;
|
|
91
|
+
declare const DeleteSubject: AuthOperation<"identity.deleteSubject", Schema.Struct<{
|
|
92
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
93
|
+
readonly requestId: Schema.NonEmptyString;
|
|
94
|
+
readonly invalidation: Schema.Literals<readonly ["immediate", "allow-expiry"]>;
|
|
95
|
+
}>, Schema.Union<readonly [typeof SubjectCleanupComplete, typeof SubjectCleanupPending]>, Schema.Union<readonly [typeof InvalidationUnsupported, typeof IdentityUnavailable]>, never, {
|
|
96
|
+
readonly payload: Schema.Struct<{
|
|
97
|
+
readonly subjectId: Schema.brand<Schema.NonEmptyString, "effect-auth/SubjectId">;
|
|
98
|
+
readonly requestId: Schema.NonEmptyString;
|
|
99
|
+
readonly invalidation: Schema.Literals<readonly ["immediate", "allow-expiry"]>;
|
|
100
|
+
}>;
|
|
101
|
+
readonly success: Schema.Union<readonly [typeof SubjectCleanupComplete, typeof SubjectCleanupPending]>;
|
|
102
|
+
readonly error: Schema.Union<readonly [typeof InvalidationUnsupported, typeof IdentityUnavailable]>;
|
|
103
|
+
readonly access: "system";
|
|
104
|
+
readonly replay: "idempotent";
|
|
105
|
+
}>;
|
|
106
|
+
/** Install only when the application supports account termination. */
|
|
107
|
+
declare const subjectLifecycleLayer: Layer.Layer<OperationHandler<"identity.deleteSubject", {
|
|
108
|
+
readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
|
|
109
|
+
readonly requestId: string;
|
|
110
|
+
readonly invalidation: "allow-expiry" | "immediate";
|
|
111
|
+
}, SubjectCleanupComplete | SubjectCleanupPending, AssuranceRequired | AuthenticationRequired | IdentityUnavailable | InvalidOperationInput | InvalidationUnsupported | OperationForbidden | OperationPrivateOutputUnsupported> | OperationHandler<"identity.disableSubject", {
|
|
112
|
+
readonly subjectId: string & import("effect/Brand").Brand<"effect-auth/SubjectId">;
|
|
113
|
+
readonly requestId: string;
|
|
114
|
+
readonly invalidation: "allow-expiry" | "immediate";
|
|
115
|
+
}, SubjectCleanupComplete | SubjectCleanupPending, AssuranceRequired | AuthenticationRequired | IdentityUnavailable | InvalidOperationInput | InvalidationUnsupported | OperationForbidden | OperationPrivateOutputUnsupported>, never, SubjectLifecycle>;
|
|
116
|
+
//#endregion
|
|
117
|
+
export { DeleteSubject, DisableSubject, InspectIdentity, ListCredentials, ListIdentifiers, identityQueryLayer, makeIdentityChanges, subjectLifecycleLayer };
|
|
118
|
+
//# sourceMappingURL=operations.d.mts.map
|