@seams/wallet-server 0.7.3 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (743) hide show
  1. package/THIRD_PARTY_NOTICES.md +7 -9
  2. package/artifact-manifest.json +241 -41
  3. package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -1
  4. package/cloudflare-router-ab/build/deriver-a/index.js +2 -2
  5. package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
  6. package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -1
  7. package/cloudflare-router-ab/build/deriver-b/index.js +2 -2
  8. package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
  9. package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
  10. package/cloudflare-router-ab/build/local-tools/darwin-x64/router_ab_local_init +0 -0
  11. package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
  12. package/cloudflare-router-ab/build/router/build-stamp.json +1 -1
  13. package/cloudflare-router-ab/build/router/index.js +2 -2
  14. package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
  15. package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -1
  16. package/cloudflare-router-ab/build/signing-worker/index.js +2 -2
  17. package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
  18. package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -1
  19. package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -2
  20. package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
  21. package/cloudflare-router-ab/migrations/deriver-a/0019_wallet_object_addresses.sql +10 -0
  22. package/cloudflare-router-ab/migrations/deriver-b/0019_wallet_object_addresses.sql +10 -0
  23. package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +3 -119
  24. package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +77 -20
  25. package/cloudflare-router-ab/wrangler.deriver-a.toml +0 -8
  26. package/cloudflare-router-ab/wrangler.deriver-b.toml +24 -8
  27. package/cloudflare-router-ab/wrangler.router.toml +0 -2
  28. package/cloudflare-router-ab/wrangler.signing-worker.toml +29 -0
  29. package/dist/esm/authorization/domain.js +3 -2
  30. package/dist/esm/authorization/lifecycleRouting.js +62 -0
  31. package/dist/esm/authorization/service.js +86 -35
  32. package/dist/esm/cloud-host.js +42 -39
  33. package/dist/esm/core/EmailOtpRecords.js +29 -222
  34. package/dist/esm/core/EmailOtpStores.js +0 -859
  35. package/dist/esm/core/IdentityStore.js +2 -339
  36. package/dist/esm/core/ThresholdService/config.js +1 -9
  37. package/dist/esm/core/ThresholdService/index.js +0 -4
  38. package/dist/esm/core/ThresholdService/kv.js +1 -66
  39. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +3 -13
  40. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.js +10 -0
  41. package/dist/esm/core/ThresholdService/routerAb/internalServiceHttp.js +1 -0
  42. package/dist/esm/core/ThresholdService/routerAbNormalSigningPolicy.js +1 -11
  43. package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +0 -541
  44. package/dist/esm/core/ThresholdService/validation.js +3 -347
  45. package/dist/esm/core/WalletAuthMethodStore.js +2 -123
  46. package/dist/esm/core/WalletStore.js +3 -209
  47. package/dist/esm/core/WebAuthnAuthenticatorStore.js +0 -202
  48. package/dist/esm/core/WebAuthnCredentialBindingStore.js +2 -182
  49. package/dist/esm/core/WebAuthnLoginChallengeStore.js +0 -52
  50. package/dist/esm/core/WebAuthnSyncChallengeStore.js +0 -54
  51. package/dist/esm/core/authService/emailOtpConfig.js +1 -195
  52. package/dist/esm/core/authService/emailOtpEnrollment.js +0 -110
  53. package/dist/esm/core/authService/emailOtpSeal.js +0 -63
  54. package/dist/esm/core/authService/nearPrivateKeySigning.js +1 -1
  55. package/dist/esm/core/authService/nearTransactions.js +3 -98
  56. package/dist/esm/core/authService/rateLimits.js +0 -84
  57. package/dist/esm/core/authService/webauthn.js +3 -299
  58. package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -24
  59. package/dist/esm/core/authService/webauthnWalletBinding.js +0 -37
  60. package/dist/esm/core/config.js +1 -95
  61. package/dist/esm/core/d1EcdsaSignerRead.js +1 -1
  62. package/dist/esm/core/d1Ed25519SignerRead.js +55 -0
  63. package/dist/esm/core/d1IdentityStore.js +1 -2
  64. package/dist/esm/core/d1TenantStore.js +1 -24
  65. package/dist/esm/core/d1WalletAuthMethodStore.js +2 -5
  66. package/dist/esm/core/d1WalletStore.js +16 -13
  67. package/dist/esm/core/deviceLinking/linkedDeviceBootstrap.js +13 -0
  68. package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +2 -2
  69. package/dist/esm/core/deviceLinking/linkedDeviceManagement.js +1 -1
  70. package/dist/esm/core/deviceLinking/linkedDeviceSession.js +20 -14
  71. package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +2 -2
  72. package/dist/esm/core/deviceLinking/requestProof.js +9 -6
  73. package/dist/esm/core/emailOtpD1Statements.js +108 -94
  74. package/dist/esm/core/keyMaterialBrands.js +2 -12
  75. package/dist/esm/core/nearKeys.js +0 -1
  76. package/dist/esm/core/nearRelayerAccountProvisioning.js +7 -10
  77. package/dist/esm/core/passkeyCredentialClaims.js +8 -0
  78. package/dist/esm/core/routerAbSigning/RouterAbEcdsaPresignRuntime.js +6 -6
  79. package/dist/esm/core/routerAbSigning/RouterAbNormalSigningRuntime.js +2 -30
  80. package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +1 -1
  81. package/dist/esm/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.js +1 -0
  82. package/dist/esm/core/thresholdEcdsaChainTarget.js +1 -4
  83. package/dist/esm/hosted-wallet-gateway.js +158 -52
  84. package/dist/esm/index.js +6 -19
  85. package/dist/esm/localHostedWalletGatewayHandler.js +18 -3
  86. package/dist/esm/localIntendedYaoSigningFault.js +2 -30
  87. package/dist/esm/localRegistrationSetupAuthority.js +96 -0
  88. package/dist/esm/router/auth/authRequestValidation.js +8 -16
  89. package/dist/esm/router/auth/commonRouterUtils.js +17 -10
  90. package/dist/esm/router/auth/routerApiCredentialAuth.js +26 -7
  91. package/dist/esm/router/auth/walletRegistrationContext.js +49 -0
  92. package/dist/esm/router/auth/webAuthnCredentialCodecs.js +1 -2
  93. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizationAssembly.js +88 -0
  94. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +2 -0
  95. package/dist/esm/router/cloudflare/d1/auth/d1EmailOtpRouteService.js +25 -0
  96. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthConfig.js +24 -6
  97. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +75 -320
  98. package/dist/esm/router/cloudflare/d1/auth/walletSessionCredentialReaders.js +17 -1
  99. package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +57 -25
  100. package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +265 -104
  101. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +43 -17
  102. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEd25519ExportRootStore.js +6 -1
  103. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +12 -2
  104. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +4 -4
  105. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +2 -2
  106. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -9
  107. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.js +2 -1
  108. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.js +1 -1
  109. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +89 -7
  110. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +24 -15
  111. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.js +1 -1
  112. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.js +1 -1
  113. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +9 -6
  114. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.js +11 -2
  115. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.js +100 -10
  116. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoStateWriteFence.js +92 -0
  117. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1WalletCeremonyActivity.js +77 -0
  118. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.js +14 -9
  119. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.js +0 -1
  120. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +15 -9
  121. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +3 -2
  122. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +1 -1
  123. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +1 -7
  124. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.js +62 -36
  125. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +27 -21
  126. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +1 -1
  127. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +2 -2
  128. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.js +0 -1
  129. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +44 -12
  130. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +1 -49
  131. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +20 -31
  132. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.js +85 -0
  133. package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +0 -1
  134. package/dist/esm/router/cloudflare/d1/identity/d1IdentityService.js +0 -48
  135. package/dist/esm/router/cloudflare/d1/near/d1SponsoredNearAccount.js +242 -0
  136. package/dist/esm/router/cloudflare/d1/oidc/d1OidcBoundary.js +1 -2
  137. package/dist/esm/router/cloudflare/d1/oidc/d1OidcVerificationService.js +2 -29
  138. package/dist/esm/router/cloudflare/d1/oidc/googleOidcToken.js +41 -0
  139. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +5 -0
  140. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +52 -7
  141. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +83 -16
  142. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +8 -14
  143. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +60 -28
  144. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +0 -1
  145. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationSessionTransaction.js +28 -0
  146. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationSetupSupport.js +84 -0
  147. package/dist/esm/router/cloudflare/d1/registration/d1WalletExecutionAuthority.js +168 -0
  148. package/dist/esm/router/cloudflare/d1/registration/d1WalletOperationStore.js +53 -0
  149. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +85 -38
  150. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationInitialSession.js +33 -0
  151. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationPreparation.js +16 -0
  152. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationRead.js +58 -0
  153. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +478 -708
  154. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +13 -57
  155. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.js +169 -0
  156. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +79 -47
  157. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +11 -35
  158. package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +110 -45
  159. package/dist/esm/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.js +12 -9
  160. package/dist/esm/router/cloudflare/d1/wallet/authorizationSnapshotLayout.js +168 -0
  161. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.js +68 -0
  162. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +22 -60
  163. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +12 -48
  164. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +56 -143
  165. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorizationCleanup.js +157 -0
  166. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorizationFreeze.js +56 -0
  167. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorizationHistory.js +238 -0
  168. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorizationIntake.js +287 -0
  169. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorizationSnapshot.js +295 -0
  170. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationApprovals.js +140 -0
  171. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationChallenges.js +170 -0
  172. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationEmailOtp.js +60 -0
  173. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationOwner.js +33 -0
  174. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationOwnerRequest.js +74 -0
  175. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationPasskey.js +77 -0
  176. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationReadAccess.js +37 -0
  177. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationSessions.js +97 -0
  178. package/dist/esm/router/cloudflare/d1/wallet/d1WalletRelocationWriteBlock.js +133 -0
  179. package/dist/esm/router/cloudflare/d1/walletObjectAddresses.js +47 -0
  180. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +26 -5
  181. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +4 -70
  182. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +23 -7
  183. package/dist/esm/router/cloudflare/runtime/routerAbServiceBindings.js +32 -1
  184. package/dist/esm/router/cloudflare/runtime/staticWalletConsoleBinding.js +20 -7
  185. package/dist/esm/router/cloudflare/runtime/walletAuthorizationRelocationRoutes.js +488 -0
  186. package/dist/esm/router/cloudflare/runtime/walletConsoleOps.js +1 -0
  187. package/dist/esm/router/cloudflare/runtime/walletConsoleOpsClient.js +26 -1
  188. package/dist/esm/router/cloudflare/runtime/walletControlOps.js +3 -0
  189. package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
  190. package/dist/esm/router/cloudflare/runtime/walletObjectAddresses.js +105 -0
  191. package/dist/esm/router/cloudflare/runtime/walletPlacementRoutes.js +339 -0
  192. package/dist/esm/router/cloudflare/runtime/walletRelocationDeriver.js +244 -0
  193. package/dist/esm/router/cloudflare/runtime/walletRelocationEcdsa.js +212 -0
  194. package/dist/esm/router/cloudflare/runtime/walletRelocationEd25519.js +172 -0
  195. package/dist/esm/router/cloudflare/runtime/walletRelocationOps.js +183 -0
  196. package/dist/esm/router/cloudflare/runtime/walletRelocationPresign.js +185 -0
  197. package/dist/esm/router/cloudflare/runtime/walletRelocationSource.js +221 -0
  198. package/dist/esm/router/cloudflare/runtime/walletRuntimeOps.js +16 -4
  199. package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +30 -8
  200. package/dist/esm/router/cloudflare-adaptor.js +8 -9
  201. package/dist/esm/router/cloudflare.js +33043 -31559
  202. package/dist/esm/router/domains/ecdsa/routerAbEcdsaStrictRegistration.js +35 -9
  203. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoCapabilityCommit.js +42 -0
  204. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +42 -13
  205. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +64 -3
  206. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +6 -6
  207. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPersistence.js +70 -3
  208. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.js +59 -87
  209. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +58 -28
  210. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +13 -7
  211. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js +108 -78
  212. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +27 -5
  213. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.js +71 -22
  214. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.js +37 -25
  215. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.js +3 -3
  216. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.js +2 -1
  217. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +24 -3
  218. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +4 -3
  219. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.js +20 -7
  220. package/dist/esm/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.js +7 -1
  221. package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +0 -1
  222. package/dist/esm/router/domains/emailOtp/emailOtpRouteHandlers.js +2 -2
  223. package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.js +3 -9
  224. package/dist/esm/router/domains/passkeyCustody/registrationCustodyOutcome.js +34 -18
  225. package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.js +2 -2
  226. package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +18 -14
  227. package/dist/esm/router/domains/signingOperations/authorizedOperationWire.js +73 -0
  228. package/dist/esm/router/domains/signingOperations/ecdsaSigningResponse.js +31 -0
  229. package/dist/esm/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.js +1 -1
  230. package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +2 -1
  231. package/dist/esm/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.js +31 -121
  232. package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +2 -93
  233. package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +6 -20
  234. package/dist/esm/router/domains/signingOperations/signingPrepareSession.js +33 -0
  235. package/dist/esm/router/domains/signingOperations/walletExecutionAdmission.js +2 -3
  236. package/dist/esm/router/domains/walletRegistration/registrationSessionSeal.js +121 -0
  237. package/dist/esm/router/domains/walletRegistration/walletRegistrationReservation.js +70 -0
  238. package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +56 -168
  239. package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +3 -4
  240. package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +14 -0
  241. package/dist/esm/router/express.js +1453 -1488
  242. package/dist/esm/router/framework/http.js +4 -1
  243. package/dist/esm/router/framework/registrationSetupDispatch.js +14 -0
  244. package/dist/esm/router/framework/ror/normalize.js +0 -1
  245. package/dist/esm/router/framework/ror/options.js +0 -1
  246. package/dist/esm/router/framework/ror/provider.js +0 -1
  247. package/dist/esm/router/framework/ror/staticProvider.js +0 -1
  248. package/dist/esm/router/framework/routeDefinitions.js +1 -2
  249. package/dist/esm/router/framework/routerApiWebhooks.js +0 -1
  250. package/dist/esm/router/ror.js +0 -1
  251. package/dist/esm/router/transport/fetch/createFetchRouter.js +2 -4
  252. package/dist/esm/router/transport/fetch/routes/auth.js +3 -1
  253. package/dist/esm/router/transport/fetch/routes/deviceLinking.js +38 -149
  254. package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +5 -4
  255. package/dist/esm/router/transport/fetch/routes/deviceLinkingResponses.js +130 -0
  256. package/dist/esm/router/transport/fetch/routes/ecdsaOperationStepUpFactor.js +171 -0
  257. package/dist/esm/router/transport/fetch/routes/ed25519AuthorizedOperationRevalidation.js +65 -0
  258. package/dist/esm/router/transport/fetch/routes/normalSigningRouterProxy.js +13 -3
  259. package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +4 -3
  260. package/dist/esm/router/transport/fetch/routes/sessions.js +3 -2
  261. package/dist/esm/router/transport/fetch/routes/syncAccount.js +7 -2
  262. package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +86 -245
  263. package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +76 -212
  264. package/dist/esm/router/transport/fetch/routes/walletExecutionLanePreflight.js +18 -41
  265. package/dist/esm/router/transport/fetch/routes/walletRegistration.js +6 -3
  266. package/dist/esm/router/transport/fetch/routes/webauthnAuthenticators.js +1 -1
  267. package/dist/esm/shared-ts/src/authorization/index.js +1 -1
  268. package/dist/esm/shared-ts/src/authorization/walletAuthority.js +2 -2
  269. package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +0 -1
  270. package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +12 -2
  271. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +0 -2
  272. package/dist/esm/shared-ts/src/device-linking/contracts.js +16 -1
  273. package/dist/esm/shared-ts/src/device-linking/digests.js +2 -9
  274. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +1 -1
  275. package/dist/esm/shared-ts/src/device-linking/index.js +1 -1
  276. package/dist/esm/shared-ts/src/device-linking/parsers.js +1 -1
  277. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +1 -1
  278. package/dist/esm/shared-ts/src/device-linking/wireFields.js +1 -1
  279. package/dist/esm/shared-ts/src/near/actions.js +0 -1
  280. package/dist/esm/shared-ts/src/near/nearClient.js +1 -3
  281. package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -1
  282. package/dist/esm/shared-ts/src/signing-lanes/index.js +1 -6
  283. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +3 -3
  284. package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +2 -81
  285. package/dist/esm/shared-ts/src/signing-lanes/participants.js +1 -219
  286. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -3
  287. package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +1 -2
  288. package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +0 -1
  289. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -22
  290. package/dist/esm/shared-ts/src/threshold/participants.js +0 -1
  291. package/dist/esm/shared-ts/src/threshold/signingRootScope.js +0 -1
  292. package/dist/esm/shared-ts/src/utils/addWalletAuthMethod.js +4 -13
  293. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +1 -7
  294. package/dist/esm/shared-ts/src/utils/domainIds.js +1 -16
  295. package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -11
  296. package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +0 -1
  297. package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +6 -1
  298. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +4 -2
  299. package/dist/esm/shared-ts/src/utils/errors.js +1 -19
  300. package/dist/esm/shared-ts/src/utils/near.js +1 -1
  301. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +1 -1
  302. package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -5
  303. package/dist/esm/shared-ts/src/utils/registrationIntent.js +0 -1
  304. package/dist/esm/shared-ts/src/utils/registrationSetupOperation.js +8 -0
  305. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +1 -1
  306. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +1 -2
  307. package/dist/esm/shared-ts/src/utils/routerAbPublicKeyset.js +0 -27
  308. package/dist/esm/shared-ts/src/utils/validation.js +1 -5
  309. package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +0 -1
  310. package/dist/esm/shared-ts/src/utils/walletManagementProtocol.js +6 -0
  311. package/dist/esm/shared-ts/src/utils/wireSchema.js +2 -13
  312. package/dist/esm/shared-ts/src/wallet-recovery/backupAcknowledgement.js +6 -24
  313. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -1
  314. package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +5 -6
  315. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +1 -1
  316. package/dist/esm/storage/d1Sql.js +1 -7
  317. package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +0 -1
  318. package/dist/esm/threshold/session/signingSessionSeal/guards/backends.js +1 -2
  319. package/dist/esm/threshold/session/signingSessionSeal/idempotencyBackends.js +0 -1
  320. package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +0 -1
  321. package/dist/esm/threshold/session/signingSessionSeal/options.js +1 -2
  322. package/dist/esm/wasm/evm_crypto/pkg/evm_crypto_bg.wasm +0 -0
  323. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +0 -611
  324. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  325. package/dist/esm/wasm/shamir3pass_runtime/pkg/shamir3pass_runtime_bg.wasm +0 -0
  326. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +0 -4
  327. package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +2 -1
  328. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +11 -0
  329. package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -2
  330. package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +0 -11
  331. package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +2 -7
  332. package/dist/types/shared-ts/src/signing-lanes/index.d.ts +0 -4
  333. package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +0 -1
  334. package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +0 -18
  335. package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +6 -35
  336. package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +6 -843
  337. package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +2 -1
  338. package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +0 -10
  339. package/dist/types/shared-ts/src/threshold/participants.d.ts +1 -1
  340. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +1 -133
  341. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +4 -18
  342. package/dist/types/shared-ts/src/utils/domainIds.d.ts +0 -12
  343. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +3 -1
  344. package/dist/types/shared-ts/src/utils/errors.d.ts +0 -4
  345. package/dist/types/shared-ts/src/utils/near.d.ts +0 -20
  346. package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -2
  347. package/dist/types/shared-ts/src/utils/registrationSetupOperation.d.ts +3 -0
  348. package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +0 -9
  349. package/dist/types/shared-ts/src/utils/validation.d.ts +1 -3
  350. package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +0 -1
  351. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +3 -0
  352. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +0 -2
  353. package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +0 -1
  354. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +1 -10
  355. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodes.d.ts +1 -3
  356. package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +5 -21
  357. package/dist/types/wallet-server/src/authorization/domain.d.ts +17 -1
  358. package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +1 -0
  359. package/dist/types/wallet-server/src/authorization/ed25519WalletSessionAdmission.d.ts +35 -0
  360. package/dist/types/wallet-server/src/authorization/ed25519WalletSessionAdmission.typecheck.d.ts +2 -0
  361. package/dist/types/wallet-server/src/authorization/lifecycleRouting.d.ts +32 -0
  362. package/dist/types/wallet-server/src/authorization/lifecycleRouting.typecheck.d.ts +2 -0
  363. package/dist/types/wallet-server/src/authorization/recoveryRouting.d.ts +22 -0
  364. package/dist/types/wallet-server/src/authorization/recoveryRouting.typecheck.d.ts +2 -0
  365. package/dist/types/wallet-server/src/authorization/service.d.ts +50 -5
  366. package/dist/types/wallet-server/src/authorization/sessionRouting.d.ts +22 -0
  367. package/dist/types/wallet-server/src/authorization/sessionRouting.typecheck.d.ts +2 -0
  368. package/dist/types/wallet-server/src/cloud-host.d.ts +36 -10
  369. package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +2 -22
  370. package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +20 -84
  371. package/dist/types/wallet-server/src/core/IdentityStore.d.ts +0 -10
  372. package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +0 -1
  373. package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -2
  374. package/dist/types/wallet-server/src/core/ThresholdService/index.d.ts +1 -3
  375. package/dist/types/wallet-server/src/core/ThresholdService/kv.d.ts +0 -7
  376. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +1 -3
  377. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.d.ts +6 -0
  378. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/internalServiceHttp.d.ts +1 -0
  379. package/dist/types/wallet-server/src/core/ThresholdService/routerAbNormalSigningPolicy.d.ts +0 -1
  380. package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +7 -19
  381. package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +0 -34
  382. package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +1 -5
  383. package/dist/types/wallet-server/src/core/WalletStore.d.ts +0 -3
  384. package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +0 -20
  385. package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +1 -27
  386. package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +2 -16
  387. package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +22 -14
  388. package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +0 -24
  389. package/dist/types/wallet-server/src/core/authService/emailOtpEnrollment.d.ts +1 -70
  390. package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +0 -13
  391. package/dist/types/wallet-server/src/core/authService/githubOAuth.d.ts +2 -1
  392. package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +1 -39
  393. package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -17
  394. package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +0 -125
  395. package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +0 -3
  396. package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +1 -1
  397. package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +0 -12
  398. package/dist/types/wallet-server/src/core/config.d.ts +0 -10
  399. package/dist/types/wallet-server/src/core/d1Ed25519SignerRead.d.ts +17 -0
  400. package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +0 -2
  401. package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +0 -7
  402. package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +0 -1
  403. package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +6 -0
  404. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceBootstrap.d.ts +19 -0
  405. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +8 -6
  406. package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -5
  407. package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +11 -7
  408. package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +1 -5
  409. package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +0 -1
  410. package/dist/types/wallet-server/src/core/passkeyCredentialClaims.d.ts +9 -0
  411. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbEcdsaPresignRuntime.d.ts +5 -3
  412. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +0 -2
  413. package/dist/types/wallet-server/src/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.d.ts +1 -0
  414. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +15 -140
  415. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +4 -52
  416. package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +0 -1
  417. package/dist/types/wallet-server/src/core/types.d.ts +0 -299
  418. package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +18 -5
  419. package/dist/types/wallet-server/src/index.d.ts +8 -13
  420. package/dist/types/wallet-server/src/localIntendedYaoSigningFault.d.ts +1 -16
  421. package/dist/types/wallet-server/src/localRegistrationSetupAuthority.d.ts +13 -0
  422. package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +7 -1
  423. package/dist/types/wallet-server/src/router/auth/routerApiCredentialAuth.d.ts +11 -3
  424. package/dist/types/wallet-server/src/router/auth/walletRegistrationContext.d.ts +8 -0
  425. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizationAssembly.d.ts +23 -0
  426. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1EmailOtpRouteService.d.ts +16 -0
  427. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +28 -3
  428. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +4 -1
  429. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/walletSessionCredentialReaders.d.ts +7 -1
  430. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +33 -2
  431. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +5 -1
  432. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +7 -1
  433. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.d.ts +1 -10
  434. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.d.ts +4 -0
  435. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +6 -0
  436. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +1 -13
  437. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.d.ts +3 -1
  438. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.d.ts +1 -0
  439. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoStateWriteFence.d.ts +8 -0
  440. package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1WalletCeremonyActivity.d.ts +15 -0
  441. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.d.ts +6 -1
  442. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.d.ts +2 -2
  443. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +2 -1
  444. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.d.ts +4 -1
  445. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpCounters.typecheck.d.ts +2 -0
  446. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +0 -2
  447. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +6 -13
  448. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +21 -7
  449. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +29 -1
  450. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -16
  451. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.d.ts +7 -2
  452. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.d.ts +23 -0
  453. package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityService.d.ts +0 -12
  454. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.d.ts +24 -0
  455. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.typecheck.d.ts +2 -0
  456. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/d1OidcVerificationService.d.ts +0 -1
  457. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/googleOidcToken.d.ts +4 -0
  458. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -0
  459. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +26 -1
  460. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +33 -8
  461. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -11
  462. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +17 -7
  463. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationSessionTransaction.d.ts +13 -0
  464. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationSetupSupport.d.ts +58 -0
  465. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletExecutionAuthority.d.ts +41 -0
  466. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletOperationStore.d.ts +28 -0
  467. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +9 -9
  468. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationInitialSession.d.ts +17 -0
  469. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationPreparation.d.ts +12 -0
  470. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationRead.d.ts +43 -0
  471. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +52 -90
  472. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +3 -30
  473. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.d.ts +16 -0
  474. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.d.ts +42 -14
  475. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.d.ts +5 -4
  476. package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +24 -1
  477. package/dist/types/wallet-server/src/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.d.ts +10 -4
  478. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/authorizationSnapshotLayout.d.ts +21 -0
  479. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.d.ts +27 -0
  480. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +4 -10
  481. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +5 -9
  482. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +8 -4
  483. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorizationCleanup.d.ts +20 -0
  484. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorizationFreeze.d.ts +12 -0
  485. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorizationHistory.d.ts +20 -0
  486. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorizationIntake.d.ts +29 -0
  487. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorizationSnapshot.d.ts +31 -0
  488. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationApprovals.d.ts +49 -0
  489. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationChallenges.d.ts +47 -0
  490. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationEmailOtp.d.ts +25 -0
  491. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationOwner.d.ts +88 -0
  492. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationOwnerRequest.d.ts +37 -0
  493. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationPasskey.d.ts +12 -0
  494. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationReadAccess.d.ts +18 -0
  495. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationSessions.d.ts +23 -0
  496. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletRelocationWriteBlock.d.ts +16 -0
  497. package/dist/types/wallet-server/src/router/cloudflare/d1/walletObjectAddresses.d.ts +14 -0
  498. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.d.ts +3 -0
  499. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +0 -13
  500. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +23 -10
  501. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.typecheck.d.ts +2 -0
  502. package/dist/types/wallet-server/src/router/cloudflare/runtime/cloudflare.types.d.ts +0 -2
  503. package/dist/types/wallet-server/src/router/cloudflare/runtime/routerAbServiceBindings.d.ts +13 -0
  504. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletAuthorizationRelocationRoutes.d.ts +21 -0
  505. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOps.d.ts +1 -0
  506. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOpsClient.d.ts +3 -1
  507. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletControlOps.d.ts +2 -1
  508. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +3 -1
  509. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletObjectAddresses.d.ts +45 -0
  510. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletPlacementRoutes.d.ts +30 -0
  511. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationDeriver.d.ts +11 -0
  512. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationEcdsa.d.ts +7 -0
  513. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationEd25519.d.ts +7 -0
  514. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationOps.d.ts +11 -0
  515. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationPresign.d.ts +7 -0
  516. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRelocationSource.d.ts +26 -0
  517. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRuntimeOps.d.ts +3 -0
  518. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.d.ts +5 -0
  519. package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +0 -1
  520. package/dist/types/wallet-server/src/router/domains/ecdsa/routerAbEcdsaStrictRegistration.d.ts +3 -0
  521. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoCapabilityCommit.d.ts +7 -0
  522. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +42 -8
  523. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.d.ts +33 -2
  524. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -2
  525. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +14 -8
  526. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.typecheck.d.ts +2 -0
  527. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.d.ts +2 -0
  528. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.d.ts +17 -9
  529. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.d.ts +2 -0
  530. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.d.ts +2 -0
  531. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.d.ts +13 -14
  532. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.d.ts +7 -3
  533. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.d.ts +1 -0
  534. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.d.ts +6 -1
  535. package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.d.ts +11 -0
  536. package/dist/types/wallet-server/src/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.d.ts +12 -3
  537. package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +0 -2
  538. package/dist/types/wallet-server/src/router/domains/passkeyCustody/registrationCustodyOutcome.d.ts +10 -6
  539. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.d.ts +10 -3
  540. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +12 -8
  541. package/dist/types/wallet-server/src/router/domains/signingOperations/authorizedOperationWire.d.ts +97 -0
  542. package/dist/types/wallet-server/src/router/domains/signingOperations/ecdsaSigningResponse.d.ts +13 -0
  543. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +9 -206
  544. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +0 -17
  545. package/dist/types/wallet-server/src/router/domains/signingOperations/signingPrepareSession.d.ts +23 -0
  546. package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +1 -2
  547. package/dist/types/wallet-server/src/router/domains/walletRegistration/registrationSessionSeal.d.ts +36 -0
  548. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +8 -7
  549. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationReservation.d.ts +125 -0
  550. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +17 -15
  551. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +2 -2
  552. package/dist/types/wallet-server/src/router/framework/apiCredentialPorts.d.ts +24 -0
  553. package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +35 -41
  554. package/dist/types/wallet-server/src/router/framework/googleLoginResolution.typecheck.d.ts +2 -0
  555. package/dist/types/wallet-server/src/router/framework/registrationSetupDispatch.d.ts +13 -0
  556. package/dist/types/wallet-server/src/router/framework/routerApi.d.ts +3 -12
  557. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +1 -1
  558. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingResponses.d.ts +17 -0
  559. package/dist/types/wallet-server/src/router/transport/fetch/routes/ecdsaOperationStepUpFactor.d.ts +37 -0
  560. package/dist/types/wallet-server/src/router/transport/fetch/routes/ed25519AuthorizedOperationRevalidation.d.ts +37 -0
  561. package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +1 -17
  562. package/dist/types/wallet-server/src/storage/d1Sql.d.ts +0 -1
  563. package/dist/types/wallet-server/src/storage/tenantRoute.d.ts +1 -1
  564. package/migrations/d1-signer/0040_namespace_home_challenges.sql +16 -0
  565. package/migrations/d1-signer/0041_step_up_admission_expiry.sql +28 -0
  566. package/migrations/d1-signer/0042_deployment_resource_challenges.sql +4 -0
  567. package/migrations/d1-signer/0043_google_registration_candidate_claim.sql +2 -0
  568. package/migrations/d1-signer/0044_linked_device_bootstrap_imports.sql +6 -0
  569. package/migrations/d1-signer/0045_wallet_owned_capability_receipts.sql +29 -0
  570. package/migrations/d1-signer/0046_wallet_owned_signing_abuse.sql +41 -0
  571. package/migrations/d1-signer/0047_remove_unused_near_public_keys.sql +2 -0
  572. package/migrations/d1-signer/0048_operation_owner_scope.sql +45 -0
  573. package/migrations/d1-signer/0049_wallet_relocation_challenges.sql +16 -0
  574. package/migrations/d1-signer/0050_wallet_relocation_approvals.sql +14 -0
  575. package/migrations/d1-signer/0051_wallet_relocation_email_otp.sql +92 -0
  576. package/migrations/d1-signer/0052_wallet_relocation_session_fences.sql +91 -0
  577. package/migrations/d1-signer/0053_wallet_hosted_history_import.sql +164 -0
  578. package/migrations/d1-signer/0054_wallet_authorization_freeze.sql +318 -0
  579. package/migrations/d1-signer/0055_wallet_authorization_snapshot.sql +120 -0
  580. package/migrations/d1-signer/0056_wallet_authorization_history_import.sql +424 -0
  581. package/migrations/d1-signer/0057_wallet_authorization_intake.sql +44 -0
  582. package/migrations/d1-signer/0058_wallet_ceremony_activity.sql +59 -0
  583. package/migrations/d1-signer/0059_wallet_authorization_activation.sql +45 -0
  584. package/migrations/d1-signer/0060_wallet_authorization_cleanup.sql +153 -0
  585. package/migrations/d1-signer/0061_wallet_session_operation_settlement.sql +28 -0
  586. package/migrations/d1-signer/0062_wallet_step_up_operation_settlement.sql +204 -0
  587. package/migrations/d1-signer/0063_wallet_operation_history_transfer.sql +466 -0
  588. package/migrations/d1-signer/0064_wallet_execution_generations.sql +93 -0
  589. package/migrations/d1-signer/0065_wallet_operation_execution_generation.sql +37 -0
  590. package/migrations/d1-signer/0066_regional_deployment_admission.sql +59 -0
  591. package/migrations/d1-signer/0067_registration_completion_decision.sql +12 -0
  592. package/migrations/d1-signer/0068_registration_cancellation_write_fence.sql +24 -0
  593. package/migrations/d1-signer/0069_cancelled_registration_session_fence.sql +11 -0
  594. package/migrations/d1-signer/0070_wallet_passkey_relocation.sql +369 -0
  595. package/migrations/d1-signer/0071_regional_wallet_otp_counters.sql +98 -0
  596. package/migrations/d1-signer/0072_linked_device_relocation_history.sql +899 -0
  597. package/migrations/d1-signer/0073_wallet_recovery_relocation.sql +86 -0
  598. package/migrations/d1-signer/0074_email_otp_relocation.sql +158 -0
  599. package/migrations/d1-signer/0075_wallet_authorization_return.sql +107 -0
  600. package/migrations/d1-signer/0076_wallet_relocation_write_block.sql +406 -0
  601. package/migrations/d1-signer/0077_wallet_object_addresses.sql +24 -0
  602. package/package.json +2 -3
  603. package/src/README.md +33 -3
  604. package/cloudflare-router-ab/scripts/local-key-material.mjs +0 -29
  605. package/dist/esm/core/AuthService.js +0 -2
  606. package/dist/esm/core/NearPublicKeyStore.js +0 -200
  607. package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +0 -397
  608. package/dist/esm/core/ThresholdService/stores/KeyStore.js +0 -140
  609. package/dist/esm/core/ThresholdService/stores/SessionStore.js +0 -361
  610. package/dist/esm/core/ThresholdService/stores/StoreConfig.js +0 -13
  611. package/dist/esm/core/ThresholdService/stores/exportReplayGuard.js +0 -7
  612. package/dist/esm/core/authService/AuthService.js +0 -594
  613. package/dist/esm/core/authService/bytes.js +0 -19
  614. package/dist/esm/core/authService/configValues.js +0 -15
  615. package/dist/esm/core/authService/emailOtpChallengeOperations.js +0 -123
  616. package/dist/esm/core/authService/emailOtpChallengeProof.js +0 -183
  617. package/dist/esm/core/authService/emailOtpChallengeVerification.js +0 -264
  618. package/dist/esm/core/authService/emailOtpChallenges.js +0 -225
  619. package/dist/esm/core/authService/emailOtpDelivery.js +0 -134
  620. package/dist/esm/core/authService/emailOtpGrant.js +0 -43
  621. package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +0 -144
  622. package/dist/esm/core/authService/emailOtpUnlock.js +0 -174
  623. package/dist/esm/core/authService/googleEmailOtpOperations.js +0 -141
  624. package/dist/esm/core/authService/googleEmailOtpRegistration.js +0 -587
  625. package/dist/esm/core/authService/identity.js +0 -42
  626. package/dist/esm/core/authService/identityOperations.js +0 -32
  627. package/dist/esm/core/authService/nearAccountOperations.js +0 -229
  628. package/dist/esm/core/authService/nearPublicKeyMetadata.js +0 -108
  629. package/dist/esm/core/authService/oidcVerification.js +0 -249
  630. package/dist/esm/core/authService/registrationThresholdHelpers.js +0 -30
  631. package/dist/esm/core/authService/runtime.js +0 -45
  632. package/dist/esm/core/authService/storeRegistry.js +0 -102
  633. package/dist/esm/core/authService/thresholdStoreSummary.js +0 -32
  634. package/dist/esm/core/authService/webauthnAuthority.js +0 -17
  635. package/dist/esm/core/defaultConfigsServer.js +0 -9
  636. package/dist/esm/core/hostedAccountIds.js +0 -225
  637. package/dist/esm/core/routerAbSigning/createRouterAbSigningRuntimes.js +0 -84
  638. package/dist/esm/core/signingLanes/LaneAggregateRevocationApplicationService.js +0 -86
  639. package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +0 -324
  640. package/dist/esm/core/signingLanes/LaneEnrollmentRevocation.js +0 -173
  641. package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +0 -198
  642. package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +0 -73
  643. package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +0 -68
  644. package/dist/esm/core/storeBackends.js +0 -208
  645. package/dist/esm/core/utils.js +0 -14
  646. package/dist/esm/core/webAuthnStoreBackends.js +0 -198
  647. package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +0 -49
  648. package/dist/esm/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.js +0 -10
  649. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.js +0 -22
  650. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -166
  651. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.js +0 -38
  652. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.js +0 -20
  653. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +0 -1459
  654. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLockStore.js +0 -114
  655. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.js +0 -16
  656. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +0 -171
  657. package/dist/esm/router/cloudflare/d1/signingLanes/index.js +0 -10
  658. package/dist/esm/router/cloudflare/durableObjects/thresholdStore.js +0 -397
  659. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +0 -597
  660. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +0 -273
  661. package/dist/esm/router/cloudflare/signingLanes/index.js +0 -4
  662. package/dist/esm/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.js +0 -32
  663. package/dist/esm/router/transport/fetch/routes/nearPublicKeys.js +0 -27
  664. package/dist/esm/shared-ts/src/signing-lanes/rotation.js +0 -8
  665. package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +0 -358
  666. package/dist/esm/shared-ts/src/signing-lanes/rotationLifecycle.js +0 -313
  667. package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +0 -532
  668. package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +0 -323
  669. package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +0 -59
  670. package/dist/types/shared-ts/src/signing-lanes/participantDigest.typecheck.d.ts +0 -2
  671. package/dist/types/shared-ts/src/signing-lanes/rotation.typecheck.d.ts +0 -2
  672. package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +0 -13
  673. package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +0 -78
  674. package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +0 -27
  675. package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +0 -6
  676. package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +0 -20
  677. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeAttempt.d.ts +0 -59
  678. package/dist/types/wallet-server/src/core/AuthService.d.ts +0 -3
  679. package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +0 -48
  680. package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +0 -21
  681. package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +0 -40
  682. package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +0 -98
  683. package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +0 -4
  684. package/dist/types/wallet-server/src/core/ThresholdService/stores/ThresholdStoreConfig.typecheck.d.ts +0 -2
  685. package/dist/types/wallet-server/src/core/ThresholdService/stores/exportReplayGuard.d.ts +0 -3
  686. package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -490
  687. package/dist/types/wallet-server/src/core/authService/bytes.d.ts +0 -3
  688. package/dist/types/wallet-server/src/core/authService/configValues.d.ts +0 -7
  689. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +0 -109
  690. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +0 -169
  691. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +0 -47
  692. package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +0 -86
  693. package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +0 -66
  694. package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +0 -43
  695. package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +0 -49
  696. package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +0 -64
  697. package/dist/types/wallet-server/src/core/authService/googleEmailOtpOperations.d.ts +0 -126
  698. package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +0 -169
  699. package/dist/types/wallet-server/src/core/authService/identity.d.ts +0 -25
  700. package/dist/types/wallet-server/src/core/authService/identityOperations.d.ts +0 -19
  701. package/dist/types/wallet-server/src/core/authService/nearAccountOperations.d.ts +0 -55
  702. package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +0 -44
  703. package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +0 -66
  704. package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -11
  705. package/dist/types/wallet-server/src/core/authService/runtime.d.ts +0 -20
  706. package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -53
  707. package/dist/types/wallet-server/src/core/authService/thresholdStoreSummary.d.ts +0 -3
  708. package/dist/types/wallet-server/src/core/authService/webauthnAuthority.d.ts +0 -5
  709. package/dist/types/wallet-server/src/core/defaultConfigsServer.d.ts +0 -5
  710. package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -16
  711. package/dist/types/wallet-server/src/core/routerAbSigning/createRouterAbSigningRuntimes.d.ts +0 -16
  712. package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +0 -36
  713. package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +0 -62
  714. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentActivation.d.ts +0 -13
  715. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentRevocation.d.ts +0 -24
  716. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleApplicationService.d.ts +0 -141
  717. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +0 -228
  718. package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +0 -58
  719. package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +0 -30
  720. package/dist/types/wallet-server/src/core/signingLanes/signingWorkerLaneMaterialIdentity.d.ts +0 -4
  721. package/dist/types/wallet-server/src/core/storeBackends.d.ts +0 -83
  722. package/dist/types/wallet-server/src/core/utils.d.ts +0 -3
  723. package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +0 -96
  724. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +0 -29
  725. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.d.ts +0 -4
  726. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.d.ts +0 -4
  727. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -24
  728. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.d.ts +0 -20
  729. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.d.ts +0 -13
  730. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.d.ts +0 -51
  731. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLockStore.d.ts +0 -28
  732. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.d.ts +0 -5
  733. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneRecords.d.ts +0 -107
  734. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/index.d.ts +0 -10
  735. package/dist/types/wallet-server/src/router/cloudflare/durableObjects/thresholdStore.d.ts +0 -18
  736. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.d.ts +0 -217
  737. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.d.ts +0 -73
  738. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/index.d.ts +0 -4
  739. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.d.ts +0 -6
  740. package/dist/types/wallet-server/src/router/transport/fetch/routes/nearPublicKeys.d.ts +0 -3
  741. /package/dist/esm/{core/signingLanes/LaneEffectJournalStore.js → authorization/ed25519WalletSessionAdmission.js} +0 -0
  742. /package/dist/esm/{core/signingLanes/LaneLifecycleStore.js → authorization/recoveryRouting.js} +0 -0
  743. /package/dist/esm/{core/signingLanes/signingWorkerLaneMaterialIdentity.js → authorization/sessionRouting.js} +0 -0
@@ -1,15 +1,12 @@
1
1
  import { parseWalletId } from "../shared-ts/src/utils/domainIds.js";
2
2
  import { normalizeOptionalTrimmedString } from "../shared-ts/src/utils/normalize.js";
3
3
  import { isPlainObject } from "../shared-ts/src/utils/validation.js";
4
- import { sameRouterAbMpcMaterialActivationRef } from "../shared-ts/src/utils/routerAbNormalSigningIdentity.js";
5
4
  import { derivationClientSharePublicKey33B64uFromString, ecdsaClientRootPublicKey33B64uFromString, parseSdkEcdsaDerivationThresholdKeyId } from "../shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js";
6
5
  import { normalizeRuntimePolicyScope } from "../shared-ts/src/threshold/signingRootScope.js";
7
- import { parseRouterAbEcdsaDerivationActivationRefreshRequestV1, parseRouterAbEcdsaDerivationActivationRefreshResponseV1, parseRouterAbEcdsaDerivationPublicCapabilityV1, parseRouterAbEcdsaRegistrationActivationReceiptV1, sameRegistrationSignerSet, sameRouterAbEcdsaDerivationPublicCapabilityV1, sameRouterAbEcdsaDerivationPublicIdentityV1 } from "../shared-ts/src/utils/routerAbEcdsaDerivation.js";
8
- import { resolveStorePrefix } from "./d1TenantStore.js";
9
- import { createDurableObjectStore, postDurableObjectRequest } from "./storeBackends.js";
6
+ import { parseRouterAbEcdsaDerivationActivationRefreshRequestV1, parseRouterAbEcdsaDerivationActivationRefreshResponseV1, parseRouterAbEcdsaDerivationPublicCapabilityV1, parseRouterAbEcdsaRegistrationActivationReceiptV1, sameRegistrationSignerSet, sameRouterAbEcdsaDerivationPublicIdentityV1 } from "../shared-ts/src/utils/routerAbEcdsaDerivation.js";
10
7
  import { thresholdEcdsaChainTargetKey } from "../shared-ts/src/utils/thresholdEcdsaChainTarget.js";
11
8
  import { thresholdEcdsaChainTargetFromValue } from "./thresholdEcdsaChainTarget.js";
12
- import { D1WalletStore, WALLET_STORE_D1_SCHEMA_SQL, buildWalletEcdsaSignerRecord, ensureWalletStoreD1Schema, parseWalletEd25519SignerRecord } from "./d1WalletStore.js";
9
+ import { D1WalletStore, WALLET_STORE_D1_SCHEMA_SQL, buildWalletEcdsaSignerRecord, ensureWalletStoreD1Schema } from "./d1WalletStore.js";
13
10
  //#region src/core/WalletStore.ts
14
11
  function parseWalletEcdsaPendingSessionActivationRecord(raw) {
15
12
  if (!isPlainObject(raw) || raw.version !== "wallet_ecdsa_pending_session_activation_v1") return null;
@@ -45,37 +42,14 @@ function parseForwardedEcdsaRefreshResponse(raw) {
45
42
  if (response.result !== "forwarded") throw new Error("Persisted ECDSA refresh proof must be forwarded");
46
43
  return response;
47
44
  }
48
- function ecdsaPublicCapabilitiesEqual(left, right) {
49
- return sameRouterAbEcdsaDerivationPublicCapabilityV1(left, right);
50
- }
51
45
  function ecdsaPostRegistrationRequestMatchesCapability(input) {
52
46
  return input.request.client_id === input.capability.client_id && input.request.router_id === input.capability.router_id && input.request.context.application_binding_digest_b64u === input.capability.context.application_binding_digest_b64u && sameRouterAbEcdsaDerivationPublicIdentityV1(input.request.public_identity, input.capability.public_identity) && sameRegistrationSignerSet(input.request.signer_set, input.capability.signer_set);
53
47
  }
54
- function resolveWalletStoreNamespace(config) {
55
- return resolveStorePrefix(config, ["WALLET_PREFIX"], "wallet:");
56
- }
57
- function signerFamily(record) {
58
- return record.version === "wallet_signer_ed25519_v1" ? "ed25519" : "ecdsa";
59
- }
60
48
  function normalizeTimestampMs(value) {
61
49
  const numberValue = Number(value);
62
50
  if (!Number.isFinite(numberValue) || numberValue < 0) return null;
63
51
  return Math.floor(numberValue);
64
52
  }
65
- function parseWalletRecord(raw) {
66
- if (!isPlainObject(raw)) return null;
67
- if (raw.version !== "wallet_v1") return null;
68
- const walletId = parseWalletId(raw.walletId);
69
- const createdAtMs = normalizeTimestampMs(raw.createdAtMs);
70
- const updatedAtMs = normalizeTimestampMs(raw.updatedAtMs);
71
- if (!walletId.ok || createdAtMs == null || updatedAtMs == null) return null;
72
- return {
73
- version: "wallet_v1",
74
- walletId: walletId.value,
75
- createdAtMs,
76
- updatedAtMs
77
- };
78
- }
79
53
  function parseWalletEcdsaSignerRecord(raw) {
80
54
  if (!isPlainObject(raw) || raw.version !== "wallet_signer_ecdsa_v1") return null;
81
55
  if ("evmFamilySigningKeySlotId" in raw) return null;
@@ -180,187 +154,7 @@ function buildWalletEd25519SignerId(input) {
180
154
  if (!Number.isSafeInteger(signerSlot) || signerSlot < 1) throw new Error("Ed25519 signer ID requires an exact signerSlot");
181
155
  return `ed25519:${nearAccountId}:${signerSlot}`;
182
156
  }
183
- var InMemoryWalletStore = class {
184
- constructor(prefix) {
185
- this.prefix = prefix;
186
- this.subjects = /* @__PURE__ */ new Map();
187
- this.signers = /* @__PURE__ */ new Map();
188
- this.pendingEcdsaActivations = /* @__PURE__ */ new Map();
189
- }
190
- async getWallet(input) {
191
- const walletId = normalizeOptionalTrimmedString(input.walletId);
192
- if (!walletId) return null;
193
- return this.subjects.get(`${this.prefix}${walletId}`) ?? null;
194
- }
195
- async getEcdsaSignerByKeyHandle(input) {
196
- const walletId = normalizeOptionalTrimmedString(input.walletId);
197
- const keyHandle = normalizeOptionalTrimmedString(input.keyHandle);
198
- if (!walletId || !keyHandle) return null;
199
- const chainTargetKey = thresholdEcdsaChainTargetKey(input.chainTarget);
200
- const matches = [...this.signers.values()].filter((record) => record.version === "wallet_signer_ecdsa_v1" && record.walletId === walletId && record.walletKey.keyHandle === keyHandle && record.chainTargetKey === chainTargetKey);
201
- return matches.length === 1 ? matches[0] : null;
202
- }
203
- async getEd25519SignerBySlot(input) {
204
- const matches = [...this.signers.values()].filter((record) => record.version === "wallet_signer_ed25519_v1" && record.walletId === input.walletId && record.signerSlot === input.signerSlot);
205
- return matches.length === 1 ? matches[0] ?? null : null;
206
- }
207
- async getEcdsaSignerByPublicCapability(input) {
208
- const matches = [...this.signers.values()].filter((record) => record.version === "wallet_signer_ecdsa_v1" && record.walletId === input.walletId && ecdsaPublicCapabilitiesEqual(record.walletKey.publicCapability, input.publicCapability));
209
- if (matches.length === 0) return null;
210
- const keyHandle = matches[0]?.walletKey.keyHandle;
211
- if (!keyHandle || matches.some((record) => record.walletKey.keyHandle !== keyHandle)) throw new Error("Wallet has conflicting ECDSA public capabilities");
212
- return matches[0] ?? null;
213
- }
214
- async getEcdsaSignerByMaterialActivation(input) {
215
- const matches = [...this.signers.values()].filter((record) => record.version === "wallet_signer_ecdsa_v1" && record.walletId === input.walletId && sameRouterAbMpcMaterialActivationRef(record.walletKey.publicCapability.material_activation, input.materialActivation));
216
- if (matches.length === 0) return null;
217
- const keyHandle = matches[0]?.walletKey.keyHandle;
218
- if (!keyHandle || matches.some((record) => record.walletKey.keyHandle !== keyHandle)) throw new Error("Wallet has conflicting ECDSA material activations");
219
- return matches[0] ?? null;
220
- }
221
- async getEcdsaSignerByPostRegistrationRequest(input) {
222
- const matches = [...this.signers.values()].filter((record) => record.version === "wallet_signer_ecdsa_v1" && record.walletId === input.walletId && ecdsaPostRegistrationRequestMatchesCapability({
223
- request: input.request,
224
- capability: record.walletKey.publicCapability
225
- }));
226
- if (matches.length === 0) return null;
227
- const keyHandle = matches[0]?.walletKey.keyHandle;
228
- if (!keyHandle || matches.some((record) => record.walletKey.keyHandle !== keyHandle)) throw new Error("Wallet has conflicting ECDSA post-registration identities");
229
- return matches[0] ?? null;
230
- }
231
- async listEcdsaSignersForWallet(input) {
232
- return [...this.signers.values()].filter((record) => record.version === "wallet_signer_ecdsa_v1" && record.walletId === input.walletId);
233
- }
234
- async putEcdsaPendingSessionActivation(record) {
235
- this.pendingEcdsaActivations.set(`${record.walletId}:${record.lifecycleId}:${record.requestId}`, record);
236
- }
237
- async putSubject(record) {
238
- this.subjects.set(`${this.prefix}${record.walletId}`, record);
239
- }
240
- async putSigner(record) {
241
- this.signers.set(`${this.prefix}${record.walletId}:${signerFamily(record)}:${record.signerId}`, record);
242
- }
243
- async putSigners(records) {
244
- for (const record of records) await this.putSigner(record);
245
- }
246
- };
247
- var CloudflareDurableObjectWalletStore = class {
248
- constructor(stub, prefix) {
249
- this.stub = stub;
250
- this.prefix = prefix;
251
- }
252
- key(scope, id) {
253
- return `${this.prefix}${scope}:${id}`;
254
- }
255
- /** The object's reply to a `get`, or `undefined` when it answers with an HTTP error. */
256
- async get(key) {
257
- const response = await postDurableObjectRequest(this.stub, {
258
- op: "get",
259
- key
260
- });
261
- if (!response.ok) return void 0;
262
- return await response.json().catch(() => null);
263
- }
264
- async put(key, value) {
265
- const response = await postDurableObjectRequest(this.stub, {
266
- op: "set",
267
- key,
268
- value
269
- });
270
- if (!response.ok) throw new Error(`Wallet DO store HTTP ${response.status}: ${await response.text()}`);
271
- }
272
- async putSubject(record) {
273
- await this.put(this.key("subject", record.walletId), record);
274
- }
275
- async getWallet(input) {
276
- const walletId = normalizeOptionalTrimmedString(input.walletId);
277
- if (!walletId) return null;
278
- const current = await this.get(this.key("subject", walletId));
279
- if (current === void 0) return null;
280
- return parseWalletRecord(current?.value);
281
- }
282
- async getEcdsaSignerByKeyHandle(input) {
283
- const walletId = normalizeOptionalTrimmedString(input.walletId);
284
- const keyHandle = normalizeOptionalTrimmedString(input.keyHandle);
285
- if (!walletId || !keyHandle) return null;
286
- const chainTargetKey = thresholdEcdsaChainTargetKey(input.chainTarget);
287
- const current = await this.get(this.key("signer", `${walletId}:ecdsa-key-handle:${keyHandle}:${chainTargetKey}`));
288
- if (current === void 0) return null;
289
- return parseWalletEcdsaSignerRecord(current?.value);
290
- }
291
- async getEd25519SignerBySlot(input) {
292
- const current = await this.get(this.key("signer", `${input.walletId}:ed25519-slot:${input.signerSlot}`));
293
- if (current === void 0) return null;
294
- return parseWalletEd25519SignerRecord(current?.value);
295
- }
296
- async getEcdsaSignerByPublicCapability(input) {
297
- const current = await this.get(this.key("signer", `${input.walletId}:ecdsa-public-capability:${input.publicCapability.registration_request_digest_b64u}`));
298
- if (current === void 0) return null;
299
- const signer = parseWalletEcdsaSignerRecord(current?.value);
300
- return signer && ecdsaPublicCapabilitiesEqual(signer.walletKey.publicCapability, input.publicCapability) ? signer : null;
301
- }
302
- async getEcdsaSignerByMaterialActivation(input) {
303
- const current = await this.get(this.key("signer", `${input.walletId}:ecdsa-material-activation:${input.materialActivation.activation_id}`));
304
- if (current === void 0) return null;
305
- const signer = parseWalletEcdsaSignerRecord(current?.value);
306
- return signer && signer.walletId === input.walletId && sameRouterAbMpcMaterialActivationRef(signer.walletKey.publicCapability.material_activation, input.materialActivation) ? signer : null;
307
- }
308
- async getEcdsaSignerByPostRegistrationRequest(input) {
309
- const capabilityDigest = input.request.public_identity.context_binding_b64u;
310
- const current = await this.get(this.key("signer", `${input.walletId}:ecdsa-context-binding:${capabilityDigest}`));
311
- if (current === void 0) return null;
312
- const signer = parseWalletEcdsaSignerRecord(current?.value);
313
- return signer && ecdsaPostRegistrationRequestMatchesCapability({
314
- request: input.request,
315
- capability: signer.walletKey.publicCapability
316
- }) ? signer : null;
317
- }
318
- async listEcdsaSignersForWallet(input) {
319
- const current = await this.get(this.key("signer", `${input.walletId}:ecdsa-list`));
320
- if (current?.value === void 0 || current.value === null) return [];
321
- if (!Array.isArray(current.value)) throw new Error("Wallet ECDSA signer list is invalid");
322
- const signers = [];
323
- for (const raw of current.value) {
324
- const signer = parseWalletEcdsaSignerRecord(raw);
325
- if (!signer || signer.walletId !== input.walletId) throw new Error("Wallet ECDSA signer list contains an invalid record");
326
- signers.push(signer);
327
- }
328
- return signers;
329
- }
330
- async putEcdsaPendingSessionActivation(record) {
331
- await this.put(this.key("ecdsa-session-activation", `${record.walletId}:${record.lifecycleId}:${record.requestId}`), record);
332
- }
333
- async putSigner(record) {
334
- await this.put(this.key("signer", `${record.walletId}:${signerFamily(record)}:${record.signerId}`), record);
335
- if (record.version === "wallet_signer_ecdsa_v1") {
336
- await this.put(this.key("signer", `${record.walletId}:ecdsa-key-handle:${record.walletKey.keyHandle}:${record.chainTargetKey}`), record);
337
- await this.put(this.key("signer", `${record.walletId}:ecdsa-public-capability:${record.walletKey.publicCapability.registration_request_digest_b64u}`), record);
338
- await this.put(this.key("signer", `${record.walletId}:ecdsa-material-activation:${record.walletKey.publicCapability.material_activation.activation_id}`), record);
339
- await this.put(this.key("signer", `${record.walletId}:ecdsa-context-binding:${record.walletKey.publicCapability.public_identity.context_binding_b64u}`), record);
340
- const next = (await this.listEcdsaSignersForWallet({ walletId: record.walletId })).filter((signer) => signer.chainTargetKey !== record.chainTargetKey);
341
- await this.put(this.key("signer", `${record.walletId}:ecdsa-list`), [...next, record]);
342
- }
343
- if (record.version === "wallet_signer_ed25519_v1") await this.put(this.key("signer", `${record.walletId}:ed25519-slot:${record.signerSlot}`), record);
344
- }
345
- async putSigners(records) {
346
- for (const record of records) await this.putSigner(record);
347
- }
348
- };
349
- const WALLET_STORE = {
350
- tag: "wallet",
351
- name: "wallet",
352
- inMemoryLog: "Using in-memory store (non-persistent)",
353
- d1StoreName: "wallet store",
354
- resolvePrefix: resolveWalletStoreNamespace
355
- };
356
- function createWalletStore(input) {
357
- return createDurableObjectStore(input, WALLET_STORE, {
358
- d1: (options) => new D1WalletStore(options),
359
- durableObject: (stub, prefix) => new CloudflareDurableObjectWalletStore(stub, prefix),
360
- inMemory: (prefix) => new InMemoryWalletStore(prefix)
361
- });
362
- }
363
157
  //#endregion
364
- export { D1WalletStore, WALLET_STORE_D1_SCHEMA_SQL, buildWalletEcdsaSignerRecord, buildWalletEd25519SignerId, createWalletStore, ecdsaPostRegistrationRequestMatchesCapability, ensureWalletStoreD1Schema, parseWalletEcdsaPendingSessionActivationRecord, parseWalletEcdsaSignerRecord, resolveWalletStoreNamespace };
158
+ export { D1WalletStore, WALLET_STORE_D1_SCHEMA_SQL, buildWalletEcdsaSignerRecord, buildWalletEd25519SignerId, ecdsaPostRegistrationRequestMatchesCapability, ensureWalletStoreD1Schema, parseWalletEcdsaPendingSessionActivationRecord, parseWalletEcdsaSignerRecord };
365
159
 
366
160
  //# sourceMappingURL=WalletStore.js.map
@@ -1,202 +0,0 @@
1
- import { normalizeOptionalTrimmedString } from "../shared-ts/src/utils/normalize.js";
2
- import { isObject } from "../shared-ts/src/utils/validation.js";
3
- import { parseWebAuthnAuthenticatorDeviceInfo, parseWebAuthnAuthenticatorDeviceInfoJson, unknownWebAuthnAuthenticatorDeviceInfo } from "../shared-ts/src/utils/webauthnDeviceInfo.js";
4
- import { D1TenantTable, ensureD1Schema } from "./d1TenantStore.js";
5
- import { UPSERT_WEBAUTHN_AUTHENTICATOR_SQL, webAuthnAuthenticatorRows } from "./webAuthnD1Statements.js";
6
- import { WebAuthnCredentialRecords, createWebAuthnStore, resolveWebAuthnStorePrefix, webAuthnD1Store } from "./webAuthnStoreBackends.js";
7
- //#region src/core/WebAuthnAuthenticatorStore.ts
8
- const WEBAUTHN_AUTHENTICATOR_STORE_D1_SCHEMA_SQL = Object.freeze([`
9
- CREATE TABLE IF NOT EXISTS webauthn_authenticators (
10
- namespace TEXT NOT NULL,
11
- org_id TEXT NOT NULL,
12
- project_id TEXT NOT NULL,
13
- env_id TEXT NOT NULL,
14
- user_id TEXT NOT NULL,
15
- credential_id_b64u TEXT NOT NULL,
16
- credential_public_key_b64u TEXT NOT NULL,
17
- counter INTEGER NOT NULL,
18
- created_at_ms INTEGER NOT NULL,
19
- updated_at_ms INTEGER NOT NULL,
20
- device_info_json TEXT NOT NULL DEFAULT '{}',
21
- PRIMARY KEY (namespace, org_id, project_id, env_id, user_id, credential_id_b64u),
22
- CHECK (length(user_id) > 0),
23
- CHECK (length(credential_id_b64u) > 0),
24
- CHECK (length(credential_public_key_b64u) > 0),
25
- CHECK (counter >= 0),
26
- CHECK (created_at_ms > 0),
27
- CHECK (updated_at_ms > 0)
28
- )
29
- `, `
30
- CREATE INDEX IF NOT EXISTS webauthn_authenticators_user_idx
31
- ON webauthn_authenticators (
32
- namespace,
33
- org_id,
34
- project_id,
35
- env_id,
36
- user_id,
37
- created_at_ms
38
- )
39
- `]);
40
- async function ensureWebAuthnAuthenticatorStoreD1Schema(options) {
41
- await ensureD1Schema(options.database, WEBAUTHN_AUTHENTICATOR_STORE_D1_SCHEMA_SQL);
42
- }
43
- const AUTHENTICATOR_STORE = {
44
- label: "authenticator",
45
- prefixConfigKey: "WEBAUTHN_AUTHENTICATOR_PREFIX",
46
- prefixName: "authenticator",
47
- parse: parseWebAuthnAuthenticatorRecord,
48
- durableObjectLogSubject: "authenticator persistence",
49
- connectionErrorSubject: "webauthn store",
50
- unconfiguredNote: "non-persistent",
51
- d1ScopeLabel: "authenticator"
52
- };
53
- function resolveWebAuthnAuthenticatorStoreNamespace(config) {
54
- return resolveWebAuthnStorePrefix(config, AUTHENTICATOR_STORE);
55
- }
56
- function parseWebAuthnAuthenticatorRecord(raw) {
57
- if (!isObject(raw)) return null;
58
- const version = normalizeOptionalTrimmedString(raw.version);
59
- const credentialIdB64u = normalizeOptionalTrimmedString(raw.credentialIdB64u);
60
- const credentialPublicKeyB64u = normalizeOptionalTrimmedString(raw.credentialPublicKeyB64u);
61
- const counter = typeof raw.counter === "number" ? raw.counter : Number(raw.counter);
62
- const createdAtMs = typeof raw.createdAtMs === "number" ? raw.createdAtMs : Number(raw.createdAtMs);
63
- const updatedAtMs = typeof raw.updatedAtMs === "number" ? raw.updatedAtMs : Number(raw.updatedAtMs);
64
- if (version !== "webauthn_authenticator_v1") return null;
65
- if (!credentialIdB64u || !credentialPublicKeyB64u) return null;
66
- if (!Number.isFinite(counter) || counter < 0) return null;
67
- if (!Number.isFinite(createdAtMs) || createdAtMs <= 0) return null;
68
- if (!Number.isFinite(updatedAtMs) || updatedAtMs <= 0) return null;
69
- return {
70
- version: "webauthn_authenticator_v1",
71
- credentialIdB64u,
72
- credentialPublicKeyB64u,
73
- counter: Math.floor(counter),
74
- createdAtMs: Math.floor(createdAtMs),
75
- updatedAtMs: Math.floor(updatedAtMs),
76
- deviceInfo: parseWebAuthnAuthenticatorDeviceInfo(raw.deviceInfo) ?? unknownWebAuthnAuthenticatorDeviceInfo()
77
- };
78
- }
79
- function parseD1WebAuthnAuthenticatorRow(row) {
80
- if (!row) return null;
81
- return parseWebAuthnAuthenticatorRecord({
82
- version: "webauthn_authenticator_v1",
83
- credentialIdB64u: row.credential_id_b64u,
84
- credentialPublicKeyB64u: row.credential_public_key_b64u,
85
- counter: row.counter,
86
- createdAtMs: row.created_at_ms,
87
- updatedAtMs: row.updated_at_ms,
88
- deviceInfo: parseWebAuthnAuthenticatorDeviceInfoJson(row.device_info_json)
89
- });
90
- }
91
- var KeyValueWebAuthnAuthenticatorStore = class {
92
- constructor(records, prefix) {
93
- this.records = new WebAuthnCredentialRecords(records, prefix);
94
- }
95
- async get(userId, credentialIdB64u) {
96
- return this.records.get(userId, credentialIdB64u);
97
- }
98
- async put(userId, record) {
99
- const uid = normalizeOptionalTrimmedString(userId);
100
- if (!uid) throw new Error("Missing userId");
101
- const parsed = parseWebAuthnAuthenticatorRecord(record);
102
- if (!parsed) throw new Error("Invalid authenticator record");
103
- await this.records.set(uid, parsed.credentialIdB64u, parsed);
104
- }
105
- async del(userId, credentialIdB64u) {
106
- await this.records.del(userId, credentialIdB64u);
107
- }
108
- };
109
- /** Only the in-memory backend can enumerate a user's authenticators. */
110
- var InMemoryWebAuthnAuthenticatorStore = class extends KeyValueWebAuthnAuthenticatorStore {
111
- constructor(memory, prefix) {
112
- super(memory, prefix);
113
- this.memory = memory;
114
- this.prefix = prefix;
115
- }
116
- async list(userId) {
117
- const uid = normalizeOptionalTrimmedString(userId);
118
- if (!uid) return [];
119
- const keyPrefix = `${this.prefix}${uid}:`;
120
- const out = [];
121
- for (const [k, v] of this.memory.map.entries()) {
122
- if (!k.startsWith(keyPrefix)) continue;
123
- const parsed = parseWebAuthnAuthenticatorRecord(v);
124
- if (parsed) out.push(parsed);
125
- }
126
- out.sort((a, b) => a.createdAtMs - b.createdAtMs);
127
- return out;
128
- }
129
- };
130
- var D1WebAuthnAuthenticatorStore = class {
131
- constructor(input) {
132
- this.adapterKind = "d1";
133
- this.prepare = (sql, values) => this.table.prepare(sql, values);
134
- this.table = new D1TenantTable(input, webAuthnD1Store(AUTHENTICATOR_STORE.d1ScopeLabel), WEBAUTHN_AUTHENTICATOR_STORE_D1_SCHEMA_SQL);
135
- }
136
- async get(userId, credentialIdB64u) {
137
- await this.table.ensureSchema();
138
- const uid = normalizeOptionalTrimmedString(userId);
139
- const cid = normalizeOptionalTrimmedString(credentialIdB64u);
140
- if (!uid || !cid) return null;
141
- return parseD1WebAuthnAuthenticatorRow(await webAuthnAuthenticatorRows.select(this.prepare, uid, cid).first());
142
- }
143
- async put(userId, record) {
144
- await this.table.ensureSchema();
145
- const uid = normalizeOptionalTrimmedString(userId);
146
- if (!uid) throw new Error("Missing userId");
147
- const parsed = parseWebAuthnAuthenticatorRecord(record);
148
- if (!parsed) throw new Error("Invalid authenticator record");
149
- await this.table.prepare(UPSERT_WEBAUTHN_AUTHENTICATOR_SQL, [
150
- uid,
151
- parsed.credentialIdB64u,
152
- parsed.credentialPublicKeyB64u,
153
- parsed.counter,
154
- parsed.createdAtMs,
155
- parsed.updatedAtMs,
156
- JSON.stringify(parsed.deviceInfo)
157
- ]).run();
158
- }
159
- async del(userId, credentialIdB64u) {
160
- await this.table.ensureSchema();
161
- const uid = normalizeOptionalTrimmedString(userId);
162
- const cid = normalizeOptionalTrimmedString(credentialIdB64u);
163
- if (!uid || !cid) return;
164
- await this.table.prepare(`DELETE FROM webauthn_authenticators
165
- WHERE namespace = ?
166
- AND org_id = ?
167
- AND project_id = ?
168
- AND env_id = ?
169
- AND user_id = ?
170
- AND credential_id_b64u = ?`, [uid, cid]).run();
171
- }
172
- async list(userId) {
173
- await this.table.ensureSchema();
174
- const uid = normalizeOptionalTrimmedString(userId);
175
- if (!uid) return [];
176
- const result = await this.table.prepare(`SELECT credential_id_b64u, credential_public_key_b64u, counter, created_at_ms, updated_at_ms, device_info_json
177
- FROM webauthn_authenticators
178
- WHERE namespace = ?
179
- AND org_id = ?
180
- AND project_id = ?
181
- AND env_id = ?
182
- AND user_id = ?
183
- ORDER BY created_at_ms ASC`, [uid]).all();
184
- const records = [];
185
- for (const row of result.results || []) {
186
- const parsed = parseD1WebAuthnAuthenticatorRow(row);
187
- if (parsed) records.push(parsed);
188
- }
189
- return records;
190
- }
191
- };
192
- function createWebAuthnAuthenticatorStore(input) {
193
- return createWebAuthnStore(input, AUTHENTICATOR_STORE, {
194
- d1: (options) => new D1WebAuthnAuthenticatorStore(options),
195
- keyValue: (records, prefix) => new KeyValueWebAuthnAuthenticatorStore(records, prefix),
196
- inMemory: (records, prefix) => new InMemoryWebAuthnAuthenticatorStore(records, prefix)
197
- });
198
- }
199
- //#endregion
200
- export { D1WebAuthnAuthenticatorStore, WEBAUTHN_AUTHENTICATOR_STORE_D1_SCHEMA_SQL, createWebAuthnAuthenticatorStore, ensureWebAuthnAuthenticatorStoreD1Schema, resolveWebAuthnAuthenticatorStoreNamespace };
201
-
202
- //# sourceMappingURL=WebAuthnAuthenticatorStore.js.map
@@ -1,10 +1,7 @@
1
1
  import { normalizeOptionalTrimmedString } from "../shared-ts/src/utils/normalize.js";
2
2
  import { isObject } from "../shared-ts/src/utils/validation.js";
3
3
  import { normalizeRuntimePolicyScope } from "../shared-ts/src/threshold/signingRootScope.js";
4
- import { parseD1JsonColumn } from "../storage/d1Sql.js";
5
- import { D1TenantTable, ensureD1Schema, prepareD1TenantStatement } from "./d1TenantStore.js";
6
- import { webAuthnCredentialBindingRows } from "./webAuthnD1Statements.js";
7
- import { WebAuthnCredentialRecords, createWebAuthnStore, resolveWebAuthnStorePrefix, webAuthnD1Store } from "./webAuthnStoreBackends.js";
4
+ import { prepareD1TenantStatement } from "./d1TenantStore.js";
8
5
  //#region src/core/WebAuthnCredentialBindingStore.ts
9
6
  const INSERT_CREDENTIAL_BINDING_SQL = `INSERT INTO webauthn_credential_bindings (
10
7
  namespace,
@@ -64,57 +61,6 @@ function prepareD1WebAuthnCredentialBindingPutStatement(input) {
64
61
  function prepareD1WebAuthnCredentialBindingInsertStatement(input) {
65
62
  return prepareCredentialBindingWrite(input, INSERT_CREDENTIAL_BINDING_SQL);
66
63
  }
67
- const WEBAUTHN_CREDENTIAL_BINDING_STORE_D1_SCHEMA_SQL = Object.freeze([`
68
- CREATE TABLE IF NOT EXISTS webauthn_credential_bindings (
69
- namespace TEXT NOT NULL,
70
- org_id TEXT NOT NULL,
71
- project_id TEXT NOT NULL,
72
- env_id TEXT NOT NULL,
73
- rp_id TEXT NOT NULL,
74
- credential_id_b64u TEXT NOT NULL,
75
- user_id TEXT NOT NULL,
76
- -- Nullable until the wallet's Ed25519 Yao ceremony settles.
77
- signer_slot INTEGER,
78
- record_json TEXT NOT NULL,
79
- created_at_ms INTEGER NOT NULL,
80
- updated_at_ms INTEGER NOT NULL,
81
- PRIMARY KEY (namespace, org_id, project_id, env_id, rp_id, credential_id_b64u),
82
- CHECK (length(rp_id) > 0),
83
- CHECK (length(credential_id_b64u) > 0),
84
- CHECK (length(user_id) > 0),
85
- CHECK (signer_slot IS NULL OR signer_slot >= 1),
86
- CHECK (json_valid(record_json)),
87
- CHECK (created_at_ms > 0),
88
- CHECK (updated_at_ms > 0)
89
- )
90
- `, `
91
- CREATE INDEX IF NOT EXISTS webauthn_credential_bindings_user_idx
92
- ON webauthn_credential_bindings (
93
- namespace,
94
- org_id,
95
- project_id,
96
- env_id,
97
- user_id,
98
- rp_id,
99
- signer_slot
100
- )
101
- `]);
102
- async function ensureWebAuthnCredentialBindingStoreD1Schema(options) {
103
- await ensureD1Schema(options.database, WEBAUTHN_CREDENTIAL_BINDING_STORE_D1_SCHEMA_SQL);
104
- }
105
- const CREDENTIAL_BINDING_STORE = {
106
- label: "credential binding",
107
- prefixConfigKey: "WEBAUTHN_CREDENTIAL_BINDING_PREFIX",
108
- prefixName: "credential_binding",
109
- parse: parseWebAuthnCredentialBindingRecord,
110
- durableObjectLogSubject: "credential bindings",
111
- connectionErrorSubject: "webauthn store",
112
- unconfiguredNote: "no persistence configured",
113
- d1ScopeLabel: "credential"
114
- };
115
- function resolveWebAuthnCredentialBindingStoreNamespace(config) {
116
- return resolveWebAuthnStorePrefix(config, CREDENTIAL_BINDING_STORE);
117
- }
118
64
  function parseWebAuthnCredentialBindingRecord(raw) {
119
65
  if (!isObject(raw)) return null;
120
66
  const version = normalizeOptionalTrimmedString(raw.version);
@@ -183,133 +129,7 @@ function parseWebAuthnCredentialBindingRecord(raw) {
183
129
  ...ed25519Facts
184
130
  } : base;
185
131
  }
186
- /** One user's bindings, on one RP ID when given. The scope binds ahead of `values`. */
187
- function userBindingsFilter(userId, rpId) {
188
- const clauses = [
189
- "namespace = ?",
190
- "org_id = ?",
191
- "project_id = ?",
192
- "env_id = ?",
193
- "user_id = ?"
194
- ];
195
- const values = [userId];
196
- if (rpId) {
197
- clauses.push("rp_id = ?");
198
- values.push(rpId);
199
- }
200
- return {
201
- where: clauses.join(" AND "),
202
- values
203
- };
204
- }
205
- var KeyValueWebAuthnCredentialBindingStore = class {
206
- constructor(records, prefix) {
207
- this.records = new WebAuthnCredentialRecords(records, prefix);
208
- }
209
- async get(rpId, credentialIdB64u) {
210
- return this.records.get(rpId, credentialIdB64u);
211
- }
212
- async put(record) {
213
- const parsed = parseWebAuthnCredentialBindingRecord(record);
214
- if (!parsed) throw new Error("Invalid credential binding record");
215
- await this.records.set(parsed.rpId, parsed.credentialIdB64u, parsed);
216
- }
217
- async del(rpId, credentialIdB64u) {
218
- await this.records.del(rpId, credentialIdB64u);
219
- }
220
- };
221
- /** Only the in-memory backend can enumerate a user's bindings. */
222
- var InMemoryWebAuthnCredentialBindingStore = class extends KeyValueWebAuthnCredentialBindingStore {
223
- constructor(memory, prefix) {
224
- super(memory, prefix);
225
- this.memory = memory;
226
- }
227
- async listByUserId(input) {
228
- const uid = normalizeOptionalTrimmedString(input.userId);
229
- const rpId = normalizeOptionalTrimmedString(input.rpId);
230
- if (!uid) return [];
231
- const out = [];
232
- for (const v of this.memory.map.values()) {
233
- const parsed = parseWebAuthnCredentialBindingRecord(v);
234
- if (!parsed) continue;
235
- if (parsed.userId !== uid) continue;
236
- if (rpId && parsed.rpId !== rpId) continue;
237
- out.push(parsed);
238
- }
239
- out.sort((a, b) => (a.signerSlot ?? Number.MAX_SAFE_INTEGER) - (b.signerSlot ?? Number.MAX_SAFE_INTEGER));
240
- return out;
241
- }
242
- };
243
- var D1WebAuthnCredentialBindingStore = class {
244
- constructor(input) {
245
- this.adapterKind = "d1";
246
- this.prepare = (sql, values) => this.table.prepare(sql, values);
247
- this.table = new D1TenantTable(input, webAuthnD1Store(CREDENTIAL_BINDING_STORE.d1ScopeLabel), WEBAUTHN_CREDENTIAL_BINDING_STORE_D1_SCHEMA_SQL);
248
- }
249
- async get(rpId, credentialIdB64u) {
250
- await this.table.ensureSchema();
251
- const r = normalizeOptionalTrimmedString(rpId);
252
- const c = normalizeOptionalTrimmedString(credentialIdB64u);
253
- if (!r || !c) return null;
254
- return parseWebAuthnCredentialBindingRecord(parseD1JsonColumn((await webAuthnCredentialBindingRows.select(this.prepare, r, c).first())?.record_json));
255
- }
256
- async put(record) {
257
- await this.table.ensureSchema();
258
- await prepareD1WebAuthnCredentialBindingPutStatement({
259
- database: this.table.database,
260
- scope: this.table.scope,
261
- record
262
- }).run();
263
- }
264
- async del(rpId, credentialIdB64u) {
265
- await this.table.ensureSchema();
266
- const r = normalizeOptionalTrimmedString(rpId);
267
- const c = normalizeOptionalTrimmedString(credentialIdB64u);
268
- if (!r || !c) return;
269
- await this.table.prepare(`DELETE FROM webauthn_credential_bindings
270
- WHERE namespace = ?
271
- AND org_id = ?
272
- AND project_id = ?
273
- AND env_id = ?
274
- AND rp_id = ?
275
- AND credential_id_b64u = ?`, [r, c]).run();
276
- }
277
- async getMaxSignerSlot(input) {
278
- await this.table.ensureSchema();
279
- const userId = normalizeOptionalTrimmedString(input.userId);
280
- if (!userId) return null;
281
- const filter = userBindingsFilter(userId, normalizeOptionalTrimmedString(input.rpId));
282
- const row = await this.table.prepare(`SELECT MAX(signer_slot) AS max_signer_slot
283
- FROM webauthn_credential_bindings
284
- WHERE ${filter.where}`, filter.values).first();
285
- const maxSignerSlot = Number(row?.max_signer_slot);
286
- return Number.isFinite(maxSignerSlot) && maxSignerSlot > 0 ? Math.floor(maxSignerSlot) : null;
287
- }
288
- async listByUserId(input) {
289
- await this.table.ensureSchema();
290
- const userId = normalizeOptionalTrimmedString(input.userId);
291
- if (!userId) return [];
292
- const filter = userBindingsFilter(userId, normalizeOptionalTrimmedString(input.rpId));
293
- const result = await this.table.prepare(`SELECT record_json
294
- FROM webauthn_credential_bindings
295
- WHERE ${filter.where}
296
- ORDER BY signer_slot ASC`, filter.values).all();
297
- const records = [];
298
- for (const row of result.results || []) {
299
- const parsed = parseWebAuthnCredentialBindingRecord(parseD1JsonColumn(row.record_json));
300
- if (parsed) records.push(parsed);
301
- }
302
- return records;
303
- }
304
- };
305
- function createWebAuthnCredentialBindingStore(input) {
306
- return createWebAuthnStore(input, CREDENTIAL_BINDING_STORE, {
307
- d1: (options) => new D1WebAuthnCredentialBindingStore(options),
308
- keyValue: (records, prefix) => new KeyValueWebAuthnCredentialBindingStore(records, prefix),
309
- inMemory: (records, prefix) => new InMemoryWebAuthnCredentialBindingStore(records, prefix)
310
- });
311
- }
312
132
  //#endregion
313
- export { D1WebAuthnCredentialBindingStore, WEBAUTHN_CREDENTIAL_BINDING_STORE_D1_SCHEMA_SQL, createWebAuthnCredentialBindingStore, ensureWebAuthnCredentialBindingStoreD1Schema, prepareD1WebAuthnCredentialBindingInsertStatement, prepareD1WebAuthnCredentialBindingPutStatement, resolveWebAuthnCredentialBindingStoreNamespace };
133
+ export { prepareD1WebAuthnCredentialBindingInsertStatement, prepareD1WebAuthnCredentialBindingPutStatement };
314
134
 
315
135
  //# sourceMappingURL=WebAuthnCredentialBindingStore.js.map