@seams/wallet-server 0.7.1 → 0.8.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 (643) hide show
  1. package/THIRD_PARTY_NOTICES.md +1 -113
  2. package/artifact-manifest.json +78 -33
  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/scripts/prepare-local-runtime-config.mjs +0 -2
  22. package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +77 -20
  23. package/dist/esm/authorization/lifecycleRouting.js +62 -0
  24. package/dist/esm/authorization/service.js +43 -12
  25. package/dist/esm/authorization/vaultProxyUse.js +2 -6
  26. package/dist/esm/cloud-host.js +23 -25
  27. package/dist/esm/core/EmailOtpRecords.js +1 -217
  28. package/dist/esm/core/EmailOtpStores.js +0 -859
  29. package/dist/esm/core/IdentityStore.js +2 -426
  30. package/dist/esm/core/SessionService.js +7 -30
  31. package/dist/esm/core/ThresholdService/config.js +1 -9
  32. package/dist/esm/core/ThresholdService/index.js +0 -4
  33. package/dist/esm/core/ThresholdService/kv.js +1 -66
  34. package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +1 -13
  35. package/dist/esm/core/ThresholdService/routerAbNormalSigningPolicy.js +4 -21
  36. package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +0 -617
  37. package/dist/esm/core/ThresholdService/validation.js +2 -346
  38. package/dist/esm/core/WalletAuthMethodStore.js +2 -123
  39. package/dist/esm/core/WalletStore.js +6 -214
  40. package/dist/esm/core/WebAuthnAuthenticatorStore.js +0 -202
  41. package/dist/esm/core/WebAuthnCredentialBindingStore.js +2 -182
  42. package/dist/esm/core/WebAuthnLoginChallengeStore.js +0 -52
  43. package/dist/esm/core/WebAuthnSyncChallengeStore.js +0 -54
  44. package/dist/esm/core/authService/emailOtpConfig.js +1 -195
  45. package/dist/esm/core/authService/emailOtpEnrollment.js +0 -141
  46. package/dist/esm/core/authService/emailOtpSeal.js +0 -78
  47. package/dist/esm/core/authService/nearTransactions.js +3 -98
  48. package/dist/esm/core/authService/rateLimits.js +0 -87
  49. package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +2 -1
  50. package/dist/esm/core/authService/webauthn.js +14 -464
  51. package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -24
  52. package/dist/esm/core/authService/webauthnVerificationOutcomes.js +5 -24
  53. package/dist/esm/core/authService/webauthnWalletBinding.js +0 -37
  54. package/dist/esm/core/config.js +1 -95
  55. package/dist/esm/core/d1EcdsaSignerRead.js +76 -0
  56. package/dist/esm/core/d1IdentityStore.js +17 -77
  57. package/dist/esm/core/d1TenantStore.js +1 -24
  58. package/dist/esm/core/d1WalletAuthMethodStore.js +2 -5
  59. package/dist/esm/core/d1WalletStore.js +15 -25
  60. package/dist/esm/core/deviceLinking/linkedDeviceBootstrap.js +13 -0
  61. package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +1 -5
  62. package/dist/esm/core/deviceLinking/linkedDeviceSession.js +20 -14
  63. package/dist/esm/core/deviceLinking/linkedDeviceSessionApproval.js +1 -3
  64. package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +2 -8
  65. package/dist/esm/core/deviceLinking/requestProof.js +22 -10
  66. package/dist/esm/core/ecdsaMaterialReadSnapshot.js +85 -0
  67. package/dist/esm/core/emailOtpD1Statements.js +107 -94
  68. package/dist/esm/core/keyMaterialBrands.js +2 -12
  69. package/dist/esm/core/nearKeys.js +0 -1
  70. package/dist/esm/core/nearRelayerAccountProvisioning.js +8 -14
  71. package/dist/esm/core/passkeyCredentialClaims.js +8 -0
  72. package/dist/esm/core/routerAbSigning/RouterAbEcdsaPresignRuntime.js +2 -6
  73. package/dist/esm/core/routerAbSigning/RouterAbNormalSigningRuntime.js +2 -30
  74. package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +3 -6
  75. package/dist/esm/core/signingMaterial/ordinaryInactiveSignerMaterialReservation.js +2 -5
  76. package/dist/esm/core/thresholdEcdsaChainTarget.js +2 -7
  77. package/dist/esm/hosted-wallet-gateway.js +68 -45
  78. package/dist/esm/index.js +6 -19
  79. package/dist/esm/localHostedWalletGatewayHandler.js +25 -0
  80. package/dist/esm/localIntendedMaterialAdmissionFault.js +176 -0
  81. package/dist/esm/localIntendedPresignCancellation.js +44 -0
  82. package/dist/esm/localRegistrationSetupAuthority.js +89 -0
  83. package/dist/esm/router/auth/authRequestValidation.js +8 -16
  84. package/dist/esm/router/auth/commonRouterUtils.js +24 -10
  85. package/dist/esm/router/auth/walletSessionFailure.js +2 -5
  86. package/dist/esm/router/auth/webAuthnCredentialCodecs.js +4 -16
  87. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizationAssembly.js +87 -0
  88. package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +1 -0
  89. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.js +2 -6
  90. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthConfig.js +12 -2
  91. package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +37 -308
  92. package/dist/esm/router/cloudflare/d1/auth/walletSessionCredentialReaders.js +76 -0
  93. package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +52 -43
  94. package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +217 -50
  95. package/dist/esm/router/cloudflare/d1/authorization/d1VaultProxyStore.js +8 -12
  96. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +62 -21
  97. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEd25519ExportRootStore.js +6 -1
  98. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +12 -2
  99. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +4 -4
  100. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +1 -1
  101. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -9
  102. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.js +2 -1
  103. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +89 -7
  104. package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +24 -15
  105. package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +3 -3
  106. package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +9 -6
  107. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.js +12 -56
  108. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.js +17 -81
  109. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +1 -1
  110. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +0 -1
  111. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpDeliveryRuntime.js +6 -25
  112. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +1 -1
  113. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +1 -7
  114. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.js +19 -13
  115. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +12 -48
  116. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +24 -86
  117. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +9 -32
  118. package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.js +5 -21
  119. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +44 -12
  120. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +1 -49
  121. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +37 -136
  122. package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.js +85 -0
  123. package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +0 -1
  124. package/dist/esm/router/cloudflare/d1/identity/d1IdentityService.js +9 -88
  125. package/dist/esm/router/cloudflare/d1/near/d1SponsoredNearAccount.js +242 -0
  126. package/dist/esm/router/cloudflare/d1/oidc/d1OidcBoundary.js +18 -92
  127. package/dist/esm/router/cloudflare/d1/oidc/d1OidcVerificationService.js +4 -55
  128. package/dist/esm/router/cloudflare/d1/oidc/googleOidcToken.js +41 -0
  129. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +9 -15
  130. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +36 -7
  131. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +9 -13
  132. package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +11 -50
  133. package/dist/esm/router/cloudflare/d1/registration/d1EvmFamilyEcdsaRegistrationBranch.js +5 -20
  134. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +13 -10
  135. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +9 -14
  136. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +25 -13
  137. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +7 -31
  138. package/dist/esm/router/cloudflare/d1/registration/d1RegistrationSetupSupport.js +74 -0
  139. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +7 -1
  140. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +101 -260
  141. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +12 -56
  142. package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.js +155 -0
  143. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +1 -3
  144. package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +1 -4
  145. package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +131 -31
  146. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.js +68 -0
  147. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +7 -54
  148. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +9 -8
  149. package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +2 -142
  150. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +55 -171
  151. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +10 -79
  152. package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +23 -7
  153. package/dist/esm/router/cloudflare/runtime/routerAbPrewarm.js +2 -2
  154. package/dist/esm/router/cloudflare/runtime/staticWalletConsoleBinding.js +6 -20
  155. package/dist/esm/router/cloudflare/runtime/tenantRootCreationGrant.js +2 -9
  156. package/dist/esm/router/cloudflare/runtime/walletConsoleOps.js +1 -0
  157. package/dist/esm/router/cloudflare/runtime/walletConsoleOpsClient.js +5 -0
  158. package/dist/esm/router/cloudflare/runtime/walletControlOps.js +2 -1
  159. package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
  160. package/dist/esm/router/cloudflare/runtime/walletRuntimeOps.js +16 -4
  161. package/dist/esm/router/cloudflare-adaptor.js +1 -2
  162. package/dist/esm/router/cloudflare.js +3390 -3437
  163. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +11 -8
  164. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +3 -2
  165. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +6 -6
  166. package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPersistence.js +5 -8
  167. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +6 -6
  168. package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +3 -0
  169. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +8 -0
  170. package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryWalletSessionAuthorization.js +3 -6
  171. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +6 -25
  172. package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.js +39 -55
  173. package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +0 -1
  174. package/dist/esm/router/domains/emailOtp/emailOtpRouteHandlers.js +15 -62
  175. package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.js +2 -8
  176. package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +2 -8
  177. package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +83 -74
  178. package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +1 -0
  179. package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +1 -0
  180. package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +5 -19
  181. package/dist/esm/router/domains/signingOperations/walletExecutionAdmission.js +3 -7
  182. package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +7 -13
  183. package/dist/esm/router/domains/walletRegistration/walletRegistrationReservation.js +70 -0
  184. package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +10 -11
  185. package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +2 -3
  186. package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +55 -200
  187. package/dist/esm/router/express.js +858 -1145
  188. package/dist/esm/router/framework/http.js +7 -1
  189. package/dist/esm/router/framework/registrationSetupDispatch.js +14 -0
  190. package/dist/esm/router/framework/ror/normalize.js +0 -1
  191. package/dist/esm/router/framework/ror/options.js +0 -1
  192. package/dist/esm/router/framework/ror/provider.js +0 -1
  193. package/dist/esm/router/framework/ror/staticProvider.js +0 -1
  194. package/dist/esm/router/framework/routeDefinitions.js +1 -2
  195. package/dist/esm/router/framework/routerApiWebhooks.js +0 -1
  196. package/dist/esm/router/framework/runtimeSnapshotConsumer.js +8 -35
  197. package/dist/esm/router/ror.js +0 -1
  198. package/dist/esm/router/transport/fetch/createFetchRouter.js +3 -8
  199. package/dist/esm/router/transport/fetch/routes/auth.js +11 -41
  200. package/dist/esm/router/transport/fetch/routes/deviceLinking.js +36 -147
  201. package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +7 -23
  202. package/dist/esm/router/transport/fetch/routes/deviceLinkingResponses.js +130 -0
  203. package/dist/esm/router/transport/fetch/routes/ecdsaOperationStepUpFactor.js +171 -0
  204. package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +1 -0
  205. package/dist/esm/router/transport/fetch/routes/sessions.js +1 -0
  206. package/dist/esm/router/transport/fetch/routes/syncAccount.js +15 -38
  207. package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +46 -194
  208. package/dist/esm/router/transport/fetch/routes/walletExecutionLanePreflight.js +4 -1
  209. package/dist/esm/router/transport/fetch/routes/walletRegistration.js +3 -1
  210. package/dist/esm/router/transport/fetch/routes/webauthnAuthenticators.js +4 -16
  211. package/dist/esm/shared-ts/src/authorization/walletSessionIssuance.js +0 -1
  212. package/dist/esm/shared-ts/src/authorization/walletSignerActivationEquality.js +12 -0
  213. package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +0 -2
  214. package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +2 -5
  215. package/dist/esm/shared-ts/src/device-linking/contracts.js +16 -1
  216. package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +1 -5
  217. package/dist/esm/shared-ts/src/device-linking/digests.js +1 -8
  218. package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +12 -16
  219. package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +5 -8
  220. package/dist/esm/shared-ts/src/near/actions.js +0 -1
  221. package/dist/esm/shared-ts/src/near/nearClient.js +0 -2
  222. package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -1
  223. package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -1
  224. package/dist/esm/shared-ts/src/signing-lanes/index.js +1 -6
  225. package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +5 -9
  226. package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +2 -81
  227. package/dist/esm/shared-ts/src/signing-lanes/participants.js +1 -219
  228. package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +0 -3
  229. package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentifier.js +12 -0
  230. package/dist/esm/shared-ts/src/tenant-root/tenantRootIdentity.js +2 -9
  231. package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +2 -6
  232. package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +0 -1
  233. package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +1 -22
  234. package/dist/esm/shared-ts/src/threshold/participants.js +0 -1
  235. package/dist/esm/shared-ts/src/threshold/signingRootScope.js +0 -1
  236. package/dist/esm/shared-ts/src/utils/addWalletAuthMethod.js +4 -13
  237. package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +1 -7
  238. package/dist/esm/shared-ts/src/utils/domainIds.js +1 -16
  239. package/dist/esm/shared-ts/src/utils/ecdsaCapabilityActivation.js +1 -11
  240. package/dist/esm/shared-ts/src/utils/ecdsaKeyFactsInventory.js +2 -5
  241. package/dist/esm/shared-ts/src/utils/ecdsaServerTiming.js +0 -1
  242. package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +3 -1
  243. package/dist/esm/shared-ts/src/utils/errors.js +1 -19
  244. package/dist/esm/shared-ts/src/utils/exactKeys.js +17 -0
  245. package/dist/esm/shared-ts/src/utils/failure.js +20 -0
  246. package/dist/esm/shared-ts/src/utils/near.js +1 -1
  247. package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +1 -1
  248. package/dist/esm/shared-ts/src/utils/registrationIds.js +1 -5
  249. package/dist/esm/shared-ts/src/utils/registrationIntent.js +3 -13
  250. package/dist/esm/shared-ts/src/utils/registrationSetupOperation.js +8 -0
  251. package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +3 -6
  252. package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +1 -2
  253. package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +1 -1
  254. package/dist/esm/shared-ts/src/utils/thresholdEcdsaChainTarget.js +9 -0
  255. package/dist/esm/shared-ts/src/utils/validation.js +1 -5
  256. package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +0 -1
  257. package/dist/esm/shared-ts/src/utils/walletManagementProtocol.js +6 -0
  258. package/dist/esm/shared-ts/src/utils/wireSchema.js +2 -13
  259. package/dist/esm/shared-ts/src/wallet-recovery/backupAcknowledgement.js +6 -24
  260. package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +0 -1
  261. package/dist/esm/shared-ts/src/wallet-recovery/recoveryKeyId.js +5 -6
  262. package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +1 -4
  263. package/dist/esm/storage/d1Sql.js +1 -7
  264. package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +10 -33
  265. package/dist/esm/threshold/session/signingSessionSeal/guards/backends.js +1 -2
  266. package/dist/esm/threshold/session/signingSessionSeal/idempotencyBackends.js +3 -4
  267. package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +3 -10
  268. package/dist/esm/threshold/session/signingSessionSeal/options.js +0 -1
  269. package/dist/esm/threshold/session/signingSessionSeal/service.js +8 -35
  270. package/dist/esm/threshold/session/signingSessionSeal/transport/express.js +18 -94
  271. package/dist/esm/threshold/session/signingSessionSeal/transport/fetch.js +6 -30
  272. package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +5 -20
  273. package/dist/esm/wasm/evm_crypto/pkg/evm_crypto_bg.wasm +0 -0
  274. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +0 -611
  275. package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
  276. package/dist/esm/wasm/shamir3pass_runtime/pkg/shamir3pass_runtime_bg.wasm +0 -0
  277. package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +0 -4
  278. package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +2 -1
  279. package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +9 -2
  280. package/dist/types/shared-ts/src/authorization/walletSignerActivationEquality.d.ts +4 -0
  281. package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +3 -4
  282. package/dist/types/shared-ts/src/device-linking/contracts.d.ts +6 -63
  283. package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +2 -0
  284. package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +5 -12
  285. package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +9 -0
  286. package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -2
  287. package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +11 -12
  288. package/dist/types/shared-ts/src/signing-lanes/ids.d.ts +3 -17
  289. package/dist/types/shared-ts/src/signing-lanes/index.d.ts +0 -4
  290. package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +0 -1
  291. package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +0 -18
  292. package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +6 -35
  293. package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +6 -845
  294. package/dist/types/shared-ts/src/tenant-root/tenantRootIdentifier.d.ts +3 -0
  295. package/dist/types/shared-ts/src/tenant-root/tenantRootOperationRecord.d.ts +2 -1
  296. package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +6 -0
  297. package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +0 -10
  298. package/dist/types/shared-ts/src/threshold/participants.d.ts +1 -1
  299. package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +1 -0
  300. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +1 -133
  301. package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +4 -18
  302. package/dist/types/shared-ts/src/utils/domainIds.d.ts +0 -12
  303. package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +2 -11
  304. package/dist/types/shared-ts/src/utils/eip1559TxWasmJson.d.ts +16 -0
  305. package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +2 -0
  306. package/dist/types/shared-ts/src/utils/errors.d.ts +0 -4
  307. package/dist/types/shared-ts/src/utils/exactKeys.d.ts +11 -0
  308. package/dist/types/shared-ts/src/utils/failure.d.ts +12 -0
  309. package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -4
  310. package/dist/types/shared-ts/src/utils/near.d.ts +0 -20
  311. package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +1 -0
  312. package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -2
  313. package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +3 -8
  314. package/dist/types/shared-ts/src/utils/registrationSetupOperation.d.ts +3 -0
  315. package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +7 -19
  316. package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +3 -1
  317. package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +1 -0
  318. package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +3 -4
  319. package/dist/types/shared-ts/src/utils/routerAbNormalSigningIdentity.d.ts +30 -8
  320. package/dist/types/shared-ts/src/utils/routerApiKeyAuth.d.ts +2 -0
  321. package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +10 -11
  322. package/dist/types/shared-ts/src/utils/thresholdEcdsaChainTarget.d.ts +25 -0
  323. package/dist/types/shared-ts/src/utils/validation.d.ts +1 -3
  324. package/dist/types/shared-ts/src/utils/variant.d.ts +18 -0
  325. package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +3 -6
  326. package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +0 -1
  327. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +3 -0
  328. package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +4 -2
  329. package/dist/types/shared-ts/src/utils/wireSchema.d.ts +0 -2
  330. package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +0 -1
  331. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +1 -10
  332. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodes.d.ts +1 -3
  333. package/dist/types/shared-ts/src/wallet-recovery/recoveryEnvelopes.d.ts +3 -16
  334. package/dist/types/shared-ts/src/wallet-recovery/recoveryKeyId.d.ts +5 -21
  335. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryPreparation.d.ts +15 -0
  336. package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryTarget.d.ts +3 -4
  337. package/dist/types/wallet-server/src/authorization/domain.d.ts +13 -2
  338. package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +27 -3
  339. package/dist/types/wallet-server/src/authorization/lifecycleRouting.d.ts +32 -0
  340. package/dist/types/wallet-server/src/authorization/lifecycleRouting.typecheck.d.ts +2 -0
  341. package/dist/types/wallet-server/src/authorization/recoveryRouting.d.ts +22 -0
  342. package/dist/types/wallet-server/src/authorization/recoveryRouting.typecheck.d.ts +2 -0
  343. package/dist/types/wallet-server/src/authorization/service.d.ts +27 -1
  344. package/dist/types/wallet-server/src/authorization/sessionRouting.d.ts +20 -0
  345. package/dist/types/wallet-server/src/authorization/sessionRouting.typecheck.d.ts +2 -0
  346. package/dist/types/wallet-server/src/cloud-host.d.ts +31 -9
  347. package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +1 -22
  348. package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +1 -79
  349. package/dist/types/wallet-server/src/core/IdentityStore.d.ts +0 -10
  350. package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +0 -1
  351. package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -2
  352. package/dist/types/wallet-server/src/core/ThresholdService/index.d.ts +1 -3
  353. package/dist/types/wallet-server/src/core/ThresholdService/kv.d.ts +0 -7
  354. package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +0 -3
  355. package/dist/types/wallet-server/src/core/ThresholdService/routerAbNormalSigningPolicy.d.ts +0 -1
  356. package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +6 -18
  357. package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +0 -127
  358. package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +1 -5
  359. package/dist/types/wallet-server/src/core/WalletStore.d.ts +0 -3
  360. package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +8 -20
  361. package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +1 -27
  362. package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +2 -16
  363. package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +22 -14
  364. package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +0 -24
  365. package/dist/types/wallet-server/src/core/authService/emailOtpEnrollment.d.ts +1 -70
  366. package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +1 -14
  367. package/dist/types/wallet-server/src/core/authService/githubOAuth.d.ts +2 -1
  368. package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +1 -39
  369. package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -17
  370. package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +0 -125
  371. package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +0 -3
  372. package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +1 -1
  373. package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +0 -12
  374. package/dist/types/wallet-server/src/core/config.d.ts +0 -10
  375. package/dist/types/wallet-server/src/core/d1EcdsaSignerRead.d.ts +39 -0
  376. package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +0 -2
  377. package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +0 -7
  378. package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +0 -1
  379. package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +10 -0
  380. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceBootstrap.d.ts +19 -0
  381. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +8 -6
  382. package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionRecord.d.ts +3 -4
  383. package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -5
  384. package/dist/types/wallet-server/src/core/ecdsaMaterialReadSnapshot.d.ts +19 -0
  385. package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +10 -7
  386. package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +1 -5
  387. package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +0 -1
  388. package/dist/types/wallet-server/src/core/passkeyCredentialClaims.d.ts +9 -0
  389. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbEcdsaPresignRuntime.d.ts +0 -2
  390. package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +3 -7
  391. package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +1 -2
  392. package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +2 -11
  393. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +1 -92
  394. package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +4 -52
  395. package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +3 -12
  396. package/dist/types/wallet-server/src/core/types.d.ts +2 -305
  397. package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +15 -3
  398. package/dist/types/wallet-server/src/index.d.ts +8 -13
  399. package/dist/types/wallet-server/src/localIntendedMaterialAdmissionFault.d.ts +38 -0
  400. package/dist/types/wallet-server/src/localIntendedPresignCancellation.d.ts +4 -0
  401. package/dist/types/wallet-server/src/localRegistrationSetupAuthority.d.ts +13 -0
  402. package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +4 -9
  403. package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +15 -1
  404. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizationAssembly.d.ts +23 -0
  405. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +0 -1
  406. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +25 -3
  407. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +1 -1
  408. package/dist/types/wallet-server/src/router/cloudflare/d1/auth/walletSessionCredentialReaders.d.ts +9 -0
  409. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +4 -0
  410. package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +11 -2
  411. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +22 -3
  412. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +7 -1
  413. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.d.ts +1 -10
  414. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRouteService.d.ts +4 -0
  415. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +8 -6
  416. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +5 -8
  417. package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +1 -13
  418. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeService.d.ts +2 -2
  419. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +1 -1
  420. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +2 -8
  421. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +0 -2
  422. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +20 -11
  423. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +5 -5
  424. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpServerSealRuntime.d.ts +4 -14
  425. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +29 -1
  426. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -16
  427. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.d.ts +7 -2
  428. package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleRegistrationCompletion.d.ts +23 -0
  429. package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityService.d.ts +0 -12
  430. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.d.ts +24 -0
  431. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1SponsoredNearAccount.typecheck.d.ts +2 -0
  432. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/d1OidcVerificationService.d.ts +0 -1
  433. package/dist/types/wallet-server/src/router/cloudflare/d1/oidc/googleOidcToken.d.ts +4 -0
  434. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -0
  435. package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +9 -0
  436. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +3 -7
  437. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -11
  438. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +3 -2
  439. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationSetupSupport.d.ts +51 -0
  440. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +3 -0
  441. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +35 -50
  442. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +3 -30
  443. package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetupExecution.d.ts +11 -0
  444. package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +14 -1
  445. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerFinalizeRecord.d.ts +27 -0
  446. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +1 -10
  447. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +2 -2
  448. package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +0 -4
  449. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.d.ts +3 -0
  450. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +8 -50
  451. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +23 -10
  452. package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.typecheck.d.ts +2 -0
  453. package/dist/types/wallet-server/src/router/cloudflare/runtime/cloudflare.types.d.ts +0 -2
  454. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOps.d.ts +9 -34
  455. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleOpsClient.d.ts +2 -0
  456. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +1 -1
  457. package/dist/types/wallet-server/src/router/cloudflare/runtime/walletRuntimeOps.d.ts +3 -0
  458. package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +0 -1
  459. package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +3 -15
  460. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +1 -1
  461. package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -2
  462. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +2 -2
  463. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.typecheck.d.ts +2 -0
  464. package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.d.ts +2 -0
  465. package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.d.ts +2 -0
  466. package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +9 -50
  467. package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +0 -2
  468. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +0 -3
  469. package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +1 -13
  470. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.d.ts +8 -9
  471. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +13 -0
  472. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbOperationStepUp.d.ts +3 -4
  473. package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +7 -33
  474. package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +1 -2
  475. package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +2 -7
  476. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +1 -0
  477. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationReservation.d.ts +51 -0
  478. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +2 -10
  479. package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +2 -2
  480. package/dist/types/wallet-server/src/router/framework/apiCredentialPorts.d.ts +3 -1
  481. package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +39 -38
  482. package/dist/types/wallet-server/src/router/framework/googleLoginResolution.typecheck.d.ts +2 -0
  483. package/dist/types/wallet-server/src/router/framework/http.d.ts +1 -0
  484. package/dist/types/wallet-server/src/router/framework/registrationSetupDispatch.d.ts +13 -0
  485. package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +1 -9
  486. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +1 -1
  487. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +3 -6
  488. package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingResponses.d.ts +17 -0
  489. package/dist/types/wallet-server/src/router/transport/fetch/routes/ecdsaOperationStepUpFactor.d.ts +37 -0
  490. package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +3 -5
  491. package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +0 -1
  492. package/dist/types/wallet-server/src/storage/d1Sql.d.ts +0 -1
  493. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +1 -2
  494. package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/signingSessionSeal.types.d.ts +6 -8
  495. package/migrations/d1-signer/0040_namespace_home_challenges.sql +16 -0
  496. package/migrations/d1-signer/0041_step_up_admission_expiry.sql +28 -0
  497. package/migrations/d1-signer/0042_deployment_resource_challenges.sql +4 -0
  498. package/migrations/d1-signer/0043_google_registration_candidate_claim.sql +2 -0
  499. package/migrations/d1-signer/0044_linked_device_bootstrap_imports.sql +6 -0
  500. package/migrations/d1-signer/0045_wallet_owned_capability_receipts.sql +29 -0
  501. package/migrations/d1-signer/0046_wallet_owned_signing_abuse.sql +41 -0
  502. package/migrations/d1-signer/0047_remove_unused_near_public_keys.sql +2 -0
  503. package/migrations/d1-signer/0048_operation_owner_scope.sql +45 -0
  504. package/package.json +2 -3
  505. package/src/README.md +11 -3
  506. package/dist/esm/core/AuthService.js +0 -2
  507. package/dist/esm/core/NearPublicKeyStore.js +0 -200
  508. package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +0 -397
  509. package/dist/esm/core/ThresholdService/stores/KeyStore.js +0 -140
  510. package/dist/esm/core/ThresholdService/stores/SessionStore.js +0 -361
  511. package/dist/esm/core/ThresholdService/stores/StoreConfig.js +0 -13
  512. package/dist/esm/core/authService/AuthService.js +0 -594
  513. package/dist/esm/core/authService/bytes.js +0 -22
  514. package/dist/esm/core/authService/configValues.js +0 -15
  515. package/dist/esm/core/authService/emailOtpChallengeOperations.js +0 -126
  516. package/dist/esm/core/authService/emailOtpChallengeProof.js +0 -214
  517. package/dist/esm/core/authService/emailOtpChallengeVerification.js +0 -335
  518. package/dist/esm/core/authService/emailOtpChallenges.js +0 -260
  519. package/dist/esm/core/authService/emailOtpDelivery.js +0 -169
  520. package/dist/esm/core/authService/emailOtpGrant.js +0 -74
  521. package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +0 -175
  522. package/dist/esm/core/authService/emailOtpUnlock.js +0 -264
  523. package/dist/esm/core/authService/googleEmailOtpOperations.js +0 -141
  524. package/dist/esm/core/authService/googleEmailOtpRegistration.js +0 -674
  525. package/dist/esm/core/authService/identity.js +0 -57
  526. package/dist/esm/core/authService/identityOperations.js +0 -32
  527. package/dist/esm/core/authService/nearAccountOperations.js +0 -229
  528. package/dist/esm/core/authService/nearPublicKeyMetadata.js +0 -127
  529. package/dist/esm/core/authService/oidcVerification.js +0 -261
  530. package/dist/esm/core/authService/registrationThresholdHelpers.js +0 -30
  531. package/dist/esm/core/authService/runtime.js +0 -45
  532. package/dist/esm/core/authService/storeRegistry.js +0 -102
  533. package/dist/esm/core/authService/thresholdStoreSummary.js +0 -32
  534. package/dist/esm/core/authService/webauthnAuthority.js +0 -17
  535. package/dist/esm/core/defaultConfigsServer.js +0 -9
  536. package/dist/esm/core/hostedAccountIds.js +0 -225
  537. package/dist/esm/core/routerAbSigning/createRouterAbSigningRuntimes.js +0 -84
  538. package/dist/esm/core/signingLanes/LaneAggregateRevocationApplicationService.js +0 -86
  539. package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +0 -324
  540. package/dist/esm/core/signingLanes/LaneEnrollmentRevocation.js +0 -173
  541. package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +0 -198
  542. package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +0 -73
  543. package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +0 -68
  544. package/dist/esm/core/signingLanes/signingWorkerLaneMaterialIdentity.js +0 -0
  545. package/dist/esm/core/storeBackends.js +0 -208
  546. package/dist/esm/core/utils.js +0 -14
  547. package/dist/esm/core/webAuthnStoreBackends.js +0 -198
  548. package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +0 -56
  549. package/dist/esm/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.js +0 -10
  550. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.js +0 -22
  551. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -166
  552. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.js +0 -38
  553. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.js +0 -20
  554. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +0 -1459
  555. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLockStore.js +0 -114
  556. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.js +0 -16
  557. package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +0 -171
  558. package/dist/esm/router/cloudflare/d1/signingLanes/index.js +0 -10
  559. package/dist/esm/router/cloudflare/durableObjects/thresholdStore.js +0 -404
  560. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +0 -596
  561. package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +0 -273
  562. package/dist/esm/router/cloudflare/signingLanes/index.js +0 -4
  563. package/dist/esm/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.js +0 -32
  564. package/dist/esm/router/transport/fetch/routes/nearPublicKeys.js +0 -39
  565. package/dist/esm/shared-ts/src/signing-lanes/rotation.js +0 -8
  566. package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +0 -358
  567. package/dist/esm/shared-ts/src/signing-lanes/rotationLifecycle.js +0 -313
  568. package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +0 -532
  569. package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +0 -323
  570. package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +0 -59
  571. package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
  572. package/dist/types/shared-ts/src/signing-lanes/participantDigest.typecheck.d.ts +0 -2
  573. package/dist/types/shared-ts/src/signing-lanes/rotation.typecheck.d.ts +0 -2
  574. package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +0 -13
  575. package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +0 -78
  576. package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +0 -27
  577. package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +0 -6
  578. package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +0 -20
  579. package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeAttempt.d.ts +0 -59
  580. package/dist/types/wallet-server/src/core/AuthService.d.ts +0 -3
  581. package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +0 -48
  582. package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +0 -21
  583. package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +0 -40
  584. package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +0 -98
  585. package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +0 -4
  586. package/dist/types/wallet-server/src/core/ThresholdService/stores/ThresholdStoreConfig.typecheck.d.ts +0 -2
  587. package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -490
  588. package/dist/types/wallet-server/src/core/authService/bytes.d.ts +0 -4
  589. package/dist/types/wallet-server/src/core/authService/configValues.d.ts +0 -7
  590. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +0 -109
  591. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +0 -169
  592. package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +0 -47
  593. package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +0 -94
  594. package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +0 -66
  595. package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +0 -43
  596. package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +0 -49
  597. package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +0 -71
  598. package/dist/types/wallet-server/src/core/authService/googleEmailOtpOperations.d.ts +0 -126
  599. package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +0 -169
  600. package/dist/types/wallet-server/src/core/authService/identity.d.ts +0 -25
  601. package/dist/types/wallet-server/src/core/authService/identityOperations.d.ts +0 -19
  602. package/dist/types/wallet-server/src/core/authService/nearAccountOperations.d.ts +0 -55
  603. package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +0 -44
  604. package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +0 -66
  605. package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -11
  606. package/dist/types/wallet-server/src/core/authService/runtime.d.ts +0 -20
  607. package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -53
  608. package/dist/types/wallet-server/src/core/authService/thresholdStoreSummary.d.ts +0 -3
  609. package/dist/types/wallet-server/src/core/authService/webauthnAuthority.d.ts +0 -5
  610. package/dist/types/wallet-server/src/core/defaultConfigsServer.d.ts +0 -5
  611. package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -16
  612. package/dist/types/wallet-server/src/core/routerAbSigning/createRouterAbSigningRuntimes.d.ts +0 -16
  613. package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +0 -36
  614. package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +0 -62
  615. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentActivation.d.ts +0 -13
  616. package/dist/types/wallet-server/src/core/signingLanes/LaneEnrollmentRevocation.d.ts +0 -24
  617. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleApplicationService.d.ts +0 -141
  618. package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +0 -228
  619. package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +0 -58
  620. package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +0 -30
  621. package/dist/types/wallet-server/src/core/signingLanes/signingWorkerLaneMaterialIdentity.d.ts +0 -21
  622. package/dist/types/wallet-server/src/core/storeBackends.d.ts +0 -83
  623. package/dist/types/wallet-server/src/core/utils.d.ts +0 -3
  624. package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +0 -96
  625. package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +0 -29
  626. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1EcdsaLanePrivateBindingResolver.d.ts +0 -4
  627. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneAggregateRevocationApplicationService.d.ts +0 -4
  628. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -24
  629. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEnrollmentGateway.d.ts +0 -20
  630. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleApplicationService.d.ts +0 -13
  631. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.d.ts +0 -51
  632. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneLockStore.d.ts +0 -28
  633. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneProtocolCommitter.d.ts +0 -5
  634. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneRecords.d.ts +0 -107
  635. package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/index.d.ts +0 -10
  636. package/dist/types/wallet-server/src/router/cloudflare/durableObjects/thresholdStore.d.ts +0 -18
  637. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.d.ts +0 -217
  638. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.d.ts +0 -73
  639. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/index.d.ts +0 -4
  640. package/dist/types/wallet-server/src/router/cloudflare/signingLanes/linkedDeviceEd25519CeremonyBinding.d.ts +0 -6
  641. package/dist/types/wallet-server/src/router/transport/fetch/routes/nearPublicKeys.d.ts +0 -3
  642. /package/dist/esm/{core/signingLanes/LaneEffectJournalStore.js → authorization/recoveryRouting.js} +0 -0
  643. /package/dist/esm/{core/signingLanes/LaneLifecycleStore.js → authorization/sessionRouting.js} +0 -0
@@ -1,3 +1,15 @@
1
+ import type { LinkedDeviceBootstrapStore } from '../../../../core/deviceLinking/linkedDeviceBootstrap';
2
+ import type { LinkedDeviceRequestProofNonceStoreV1 } from '../../../../core/deviceLinking/requestProof';
3
+ import type { WebAuthnSyncChallengeStore } from '../../../../core/WebAuthnSyncChallengeStore';
4
+ import type { PasskeyCredentialClaims } from '../../../../core/passkeyCredentialClaims';
5
+ import type { EmailOtpRateLimitCounter } from '../emailOtp/d1EmailOtpRateLimitStore';
6
+ import type { GoogleEmailOtpRegistrationAttemptStore } from '../emailOtp/d1GoogleEmailOtpRegistrationAttemptStore';
7
+ import type { IdentityStore } from '../../../../core/IdentityStore';
8
+ import type { WalletLifecycleRoutingPublisher } from '../../../../authorization/lifecycleRouting';
9
+ import type { WalletRecoveryRoutingPublisher } from '../../../../authorization/recoveryRouting';
10
+ import type { WalletSessionRoutingPublisher } from '../../../../authorization/sessionRouting';
11
+ import type { WalletRegistrationSetupDispatcher } from '../../../framework/registrationSetupDispatch';
12
+ import type { WalletRegistrationReservationAuthority } from '../../../domains/walletRegistration/walletRegistrationReservation';
1
13
  import type { LinkedDevicePasskeyTargetConfigurationFieldsV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
2
14
  import type { WalletEmailOtpChannel } from '../../../../../../shared-ts/src/utils/emailOtpDomain';
3
15
  import type { EmailOtpChallengeAction, EmailOtpChallengeOperation } from '../../../../core/EmailOtpStores';
@@ -96,6 +108,18 @@ export type CloudflareD1GithubOAuthConfig = {
96
108
  readonly callbackUrl: string;
97
109
  };
98
110
  export interface CloudflareD1RouterApiAuthServiceOptions {
111
+ readonly identityStore?: IdentityStore;
112
+ readonly emailOtpRateLimitCounter?: EmailOtpRateLimitCounter;
113
+ readonly credentialClaims?: PasskeyCredentialClaims;
114
+ readonly linkedDeviceBootstrap?: LinkedDeviceBootstrapStore;
115
+ readonly linkedDeviceProofNonces?: LinkedDeviceRequestProofNonceStoreV1;
116
+ readonly syncChallenges?: WebAuthnSyncChallengeStore;
117
+ readonly googleRegistrationAttempts?: GoogleEmailOtpRegistrationAttemptStore;
118
+ readonly sessionRouting?: WalletSessionRoutingPublisher;
119
+ readonly lifecycleRouting?: WalletLifecycleRoutingPublisher;
120
+ readonly recoveryRouting?: WalletRecoveryRoutingPublisher;
121
+ readonly registrationSetupDispatcher?: WalletRegistrationSetupDispatcher;
122
+ readonly registrationAuthority?: WalletRegistrationReservationAuthority;
99
123
  readonly database: D1DatabaseLike;
100
124
  readonly namespace: string;
101
125
  readonly orgId: string;
@@ -110,7 +134,6 @@ export interface CloudflareD1RouterApiAuthServiceOptions {
110
134
  readonly implicitNearAccountTestFundingEnabled?: boolean | string;
111
135
  readonly googleOidcClientId?: string;
112
136
  readonly githubOAuth?: CloudflareD1GithubOAuthConfig;
113
- readonly accountIdDerivationSecret?: string;
114
137
  readonly emailOtpServerSeal?: CloudflareD1EmailOtpServerSealConfig;
115
138
  readonly emailOtpDeliveryMode?: string;
116
139
  readonly emailOtpRuntimeProfile?: string;
@@ -171,7 +194,7 @@ export type EmailOtpServerSealRuntimeConfig = {
171
194
  readonly configured: false;
172
195
  readonly message: string;
173
196
  };
174
- export type NormalizedCloudflareD1RouterApiAuthServiceOptions = Omit<CloudflareD1RouterApiAuthServiceOptions, 'relayerAccount' | 'relayerPublicKey' | 'relayerPrivateKey' | 'nearRpcUrl' | 'accountInitialBalance' | 'implicitNearAccountTestFundingEnabled' | 'googleOidcClientId' | 'accountIdDerivationSecret' | 'emailOtpServerSeal' | 'emailOtpDeliveryMode' | 'emailOtpRuntimeProfile' | 'emailOtpDemoAllowedOrigins' | 'emailOtpDeliveryProvider' | 'emailOtpDevOutboxEnabled' | 'emailOtpProduction' | 'emailOtpChallengeTtlMs' | 'emailOtpGrantTtlMs' | 'emailOtpMaxAttempts' | 'emailOtpLockoutTtlMs' | 'emailOtpCodeLength' | 'emailOtpMaxActiveChallengesPerContext' | 'emailOtpChallengeRateLimitMax' | 'emailOtpChallengeRateLimitWindowMs' | 'emailOtpVerifyRateLimitMax' | 'emailOtpVerifyRateLimitWindowMs' | 'emailOtpGrantRateLimitMax' | 'emailOtpGrantRateLimitWindowMs' | 'emailOtpGoogleRegistrationAttemptRateLimitMax' | 'emailOtpGoogleRegistrationAttemptRateLimitWindowMs' | 'routerAbEcdsaPresignRuntime'> & {
197
+ export type NormalizedCloudflareD1RouterApiAuthServiceOptions = Omit<CloudflareD1RouterApiAuthServiceOptions, 'relayerAccount' | 'relayerPublicKey' | 'relayerPrivateKey' | 'nearRpcUrl' | 'accountInitialBalance' | 'implicitNearAccountTestFundingEnabled' | 'googleOidcClientId' | 'emailOtpServerSeal' | 'emailOtpDeliveryMode' | 'emailOtpRuntimeProfile' | 'emailOtpDemoAllowedOrigins' | 'emailOtpDeliveryProvider' | 'emailOtpDevOutboxEnabled' | 'emailOtpProduction' | 'emailOtpChallengeTtlMs' | 'emailOtpGrantTtlMs' | 'emailOtpMaxAttempts' | 'emailOtpLockoutTtlMs' | 'emailOtpCodeLength' | 'emailOtpMaxActiveChallengesPerContext' | 'emailOtpChallengeRateLimitMax' | 'emailOtpChallengeRateLimitWindowMs' | 'emailOtpVerifyRateLimitMax' | 'emailOtpVerifyRateLimitWindowMs' | 'emailOtpGrantRateLimitMax' | 'emailOtpGrantRateLimitWindowMs' | 'emailOtpGoogleRegistrationAttemptRateLimitMax' | 'emailOtpGoogleRegistrationAttemptRateLimitWindowMs' | 'routerAbEcdsaPresignRuntime'> & {
175
198
  readonly relayerAccount?: string;
176
199
  readonly relayerPublicKey?: string;
177
200
  readonly relayerPrivateKey?: string;
@@ -180,7 +203,6 @@ export type NormalizedCloudflareD1RouterApiAuthServiceOptions = Omit<CloudflareD
180
203
  readonly implicitNearAccountTestFundingEnabled: boolean;
181
204
  readonly googleOidcClientId?: string;
182
205
  readonly githubOAuth?: CloudflareD1GithubOAuthConfig;
183
- readonly accountIdDerivationSecret?: string;
184
206
  readonly emailOtp: EmailOtpRuntimeConfig;
185
207
  readonly emailOtpServerSeal: EmailOtpServerSealRuntimeConfig;
186
208
  readonly routerAbEcdsaPresignRuntime?: RouterAbEcdsaPresignRuntime | null;
@@ -8,6 +8,6 @@ export type CloudflareD1RouterApiAuthService = Omit<RouterApiServiceBag, 'thresh
8
8
  readonly executeSignedDelegate: (input: ExecuteSignedDelegateRequest) => Promise<ExecuteSignedDelegateResult>;
9
9
  readonly linkedDeviceEd25519AuthorityReader?: LinkedDeviceEd25519AuthorityReader;
10
10
  };
11
- type LinkedDeviceEd25519AuthorityReader = Pick<D1LinkedDeviceAuthorityInstallServiceV1, 'readInstalledEd25519AuthorityByIdentityV1' | 'readInstalledEd25519AuthorityByMaterialActivationV1' | 'readInstalledEcdsaAuthorityByMaterialActivationV1' | 'readInstalledEcdsaAuthorityChainByMaterialActivationV1'>;
11
+ type LinkedDeviceEd25519AuthorityReader = Pick<D1LinkedDeviceAuthorityInstallServiceV1, 'readInstalledEd25519AuthorityByIdentityV1' | 'readInstalledEd25519AuthorityByMaterialActivationV1' | 'readInstalledEcdsaAuthorityByMaterialActivationV1' | 'readInstalledEcdsaCustodySnapshotV1'>;
12
12
  export declare function createCloudflareD1RouterApiAuthService(input: CloudflareD1RouterApiAuthServiceOptions): CloudflareD1RouterApiAuthService;
13
13
  //# sourceMappingURL=d1RouterApiAuthService.d.ts.map
@@ -0,0 +1,9 @@
1
+ import type { AuthorizationService } from '../../../../authorization/service';
2
+ import type { RouterApiWalletSessionAuthorizationV2AdmissionContext, RouterApiWalletSessionAuthorizationV2ExhaustedCandidateContext, RouterApiWalletSessionSigningCandidate } from '../../../framework/authServicePort';
3
+ type CredentialInput = Parameters<AuthorizationService['readWalletSessionAdmissionSnapshotByOperationCredential']>[0];
4
+ type AdmissionSnapshotReader = Pick<AuthorizationService, 'readWalletSessionAdmissionSnapshotByOperationCredential'>;
5
+ export declare function readActiveWalletSessionCredential(service: AdmissionSnapshotReader, input: CredentialInput): Promise<RouterApiWalletSessionAuthorizationV2AdmissionContext | null>;
6
+ export declare function readWalletSessionSigningCandidate(service: Pick<AuthorizationService, 'readEcdsaWalletSessionAdmissionSnapshotByOperationCredential'>, input: Parameters<AuthorizationService['readEcdsaWalletSessionAdmissionSnapshotByOperationCredential']>[0]): Promise<RouterApiWalletSessionSigningCandidate | null>;
7
+ export declare function readExhaustedWalletSessionCredential(service: Pick<AuthorizationService, 'readExactWalletSessionStatusSnapshotByOperationCredential'>, input: CredentialInput): Promise<RouterApiWalletSessionAuthorizationV2ExhaustedCandidateContext | null>;
8
+ export {};
9
+ //# sourceMappingURL=walletSessionCredentialReaders.d.ts.map
@@ -1,3 +1,4 @@
1
+ import type { EcdsaMaterialReadSnapshot } from '../../../../core/ecdsaMaterialReadSnapshot';
1
2
  import type { AuthorizedOperation } from '../../../../authorization/domain';
2
3
  import type { AuthorizedOperationMaterialScope } from '../../../../authorization/service';
3
4
  import type { D1WalletStoreScope } from '../../../../core/d1WalletStore';
@@ -19,6 +20,7 @@ export declare function prepareAuthorizedOperationAdmissionRead(input: {
19
20
  readonly tenantId: TenantId;
20
21
  readonly operationFingerprintDigest: CapabilityOperationFingerprintDigest;
21
22
  readonly nowMs: number;
23
+ readonly materialSnapshot: EcdsaMaterialReadSnapshot | null;
22
24
  }): D1PreparedStatementLike;
23
25
  export declare function prepareAuthorizedOperationInsert(input: {
24
26
  readonly database: D1DatabaseLike;
@@ -26,5 +28,7 @@ export declare function prepareAuthorizedOperationInsert(input: {
26
28
  readonly walletSignerScope: D1WalletStoreScope;
27
29
  readonly operation: AuthorizedOperation;
28
30
  readonly material: AuthorizedOperationMaterialScope | null;
31
+ readonly materialSnapshot: EcdsaMaterialReadSnapshot | null;
32
+ readonly existingOperation: 'reject' | 'preserve';
29
33
  }): D1PreparedStatementLike;
30
34
  //# sourceMappingURL=authorizedOperationStatements.d.ts.map
@@ -1,4 +1,6 @@
1
- import type { EcdsaWalletSessionAdmissionInput, EcdsaWalletSessionAdmissionResult, PinnedOwnerWalletScope } from '../../../../authorization/ecdsaWalletSessionAdmission';
1
+ import type { EcdsaWalletSessionAdmissionRead } from '../../../../authorization/service';
2
+ import type { RouterAbMpcMaterialActivationRefWire } from '../../../../../../shared-ts/src/utils/routerAbNormalSigningIdentity';
3
+ import type { EcdsaWalletSessionAdmissionInput, EcdsaWalletSessionAdmissionResult, EcdsaWalletSessionResolutionResult, PinnedOwnerWalletScope } from '../../../../authorization/ecdsaWalletSessionAdmission';
2
4
  import { type MpcMaterialActivationRef, type WalletAuthorityId, type WalletAuthMethodId, type WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
3
5
  import { type AuthorizedOperationId, type TenantId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
4
6
  import type { AuthorizedOperation, AuthorizedOperationInput, IssuedWalletSessionAuthorizationV2, LiveWalletSessionAuthorizationProjectionV2, WalletSessionAuthorizationV2, ActiveWalletSessionQuota, PersistedActiveWalletSessionAuthorizationV2, DirectV2CommitResult, WalletSessionAuthorizationV2MintLookup, WalletSessionAuthorizationV2MintRead, AuthorizedOperationReplayResponse, CompletedCapabilityOperationResult, IssuedHostedWalletSeamsSessionExchangeV2, RedeemHostedWalletSeamsSessionExchangeV2Input, PersistedHostedWalletSeamsSessionExchangeV2Result, ExactWalletSessionQuotaProjectionV1, ExactWalletSessionStatusV2, ExactWalletSessionStatusSnapshotV2, WalletSessionAdmissionSnapshotV2, WalletSessionExactOperationContext, ResolvedHostedWalletSessionOperationCredentialV2, VerifiedAuthorizationEvidenceSet, VerifiedOwnerProof } from '../../../../authorization/domain';
@@ -58,7 +60,7 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
58
60
  }): readonly D1PreparedStatementLike[];
59
61
  private prepareRetireHostedChildrenForParentSelection;
60
62
  putIssuedHostedWalletSeamsSessionExchange(exchange: IssuedHostedWalletSeamsSessionExchangeV2): Promise<void>;
61
- redeemHostedWalletSeamsSessionExchange(input: RedeemHostedWalletSeamsSessionExchangeV2Input): Promise<PersistedHostedWalletSeamsSessionExchangeV2Result>;
63
+ redeemHostedWalletSeamsSessionExchange(input: RedeemHostedWalletSeamsSessionExchangeV2Input, publishCredentialLocator?: () => Promise<void>): Promise<PersistedHostedWalletSeamsSessionExchangeV2Result>;
62
64
  readHostedWalletSessionOperationCredentialV2(input: {
63
65
  readonly tenantId: TenantId;
64
66
  readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
@@ -134,6 +136,12 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
134
136
  readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
135
137
  readonly nowMs: number;
136
138
  }): Promise<WalletSessionAdmissionSnapshotV2 | null>;
139
+ readEcdsaWalletSessionAdmissionSnapshotByOperationCredential(input: {
140
+ readonly tenantId: WalletSessionAuthorizationV2['tenantId'];
141
+ readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
142
+ readonly nowMs: number;
143
+ readonly materialActivation: RouterAbMpcMaterialActivationRefWire;
144
+ }): Promise<EcdsaWalletSessionAdmissionRead | null>;
137
145
  readWalletSessionExactOperationContextByCredential(input: {
138
146
  readonly tenantId: WalletSessionAuthorizationV2['tenantId'];
139
147
  readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
@@ -194,6 +202,7 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
194
202
  readonly operation: AuthorizedOperationInput;
195
203
  readonly material?: AuthorizedOperationMaterialScope;
196
204
  }): Promise<AuthorizedOperationAdmissionResult>;
205
+ resolveEcdsaWalletSessionOperation(input: EcdsaWalletSessionAdmissionInput): Promise<EcdsaWalletSessionResolutionResult>;
197
206
  admitEcdsaWalletSessionOperation(input: EcdsaWalletSessionAdmissionInput): Promise<EcdsaWalletSessionAdmissionResult>;
198
207
  private admitAuthorizedOperationRecord;
199
208
  completeAuthorizedOperation(input: {
@@ -1,3 +1,7 @@
1
+ import { type PasskeyCredentialClaims } from '../../../../core/passkeyCredentialClaims';
2
+ import { EcdsaMaterialReadSnapshot } from '../../../../core/ecdsaMaterialReadSnapshot';
3
+ import { type EcdsaMaterialReadSource } from '../../../../core/d1EcdsaSignerRead';
4
+ import type { WalletEcdsaSignerRecord } from '../../../../core/WalletStore';
1
5
  import type { ActiveWalletAuthorityV1 } from '../../../../../../shared-ts/src/authorization/walletAuthority';
2
6
  import { type LinkDeviceSessionId, type MpcMaterialActivationRef, type WalletAuthMethodId, type WalletAuthorityId, type WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
3
7
  import { type DeviceId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
@@ -20,6 +24,11 @@ import type { AuthorizationService } from '../../../../authorization/service';
20
24
  import { type PersistedActiveWalletSessionAuthorizationV2, type IssuedWalletSessionAuthorizationV2 } from '../../../../authorization/domain';
21
25
  import { type DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
22
26
  import type { CloudflareD1EmailOtpRegistrationEnrollmentFinalizer } from '../emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer';
27
+ export type InstalledEcdsaCustodySnapshotV1 = {
28
+ readonly readSnapshot: EcdsaMaterialReadSnapshot;
29
+ readonly chain: readonly InstalledLinkedDeviceEcdsaAuthorityProjectionV1[];
30
+ readonly signers: readonly WalletEcdsaSignerRecord[];
31
+ };
23
32
  type ExactSigner = ExactAdministeredSignerV1;
24
33
  type ListWalletEd25519SignersV1 = (walletId: WalletId) => Promise<readonly WalletEd25519SignerRecord[]>;
25
34
  type WorkerOrdinarySignerMaterialReservationPreparationV1 = {
@@ -40,6 +49,7 @@ export type OrdinaryInactiveSignerMaterialActivationPortV1 = {
40
49
  }): Promise<void>;
41
50
  };
42
51
  export type D1LinkedDeviceAuthorityInstallServiceOptionsV1 = {
52
+ readonly credentialClaims?: PasskeyCredentialClaims;
43
53
  readonly database: D1DatabaseLike;
44
54
  readonly scope: D1WalletAuthorityStoreScope;
45
55
  readonly authorityStore: D1WalletAuthorityStore;
@@ -67,7 +77,7 @@ export type D1LinkedDeviceAuthorityInstallServiceOptionsV1 = {
67
77
  };
68
78
  readonly reservationService: OrdinaryInactiveSignerMaterialReservationServiceV1;
69
79
  readonly materialActivation: OrdinaryInactiveSignerMaterialActivationPortV1;
70
- readonly authorizationService: Pick<AuthorizationService, 'prepareWalletSessionAuthorizationV2' | 'readWalletSessionAuthorizationV2ByMint'>;
80
+ readonly authorizationService: Pick<AuthorizationService, 'prepareWalletSessionAuthorizationV2' | 'readWalletSessionAuthorizationV2ByMint' | 'prepareDirectWalletSessionCredential'>;
71
81
  readonly authorizationStore: {
72
82
  prepareDirectWalletSessionAuthorizationV2Statements(persisted: PersistedActiveWalletSessionAuthorizationV2): readonly [
73
83
  D1PreparedStatementLike,
@@ -226,10 +236,11 @@ export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
226
236
  readonly walletId: WalletId;
227
237
  readonly materialActivation: MpcMaterialActivationRef;
228
238
  }): Promise<InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null>;
229
- readInstalledEcdsaAuthorityChainByMaterialActivationV1(input: {
239
+ readInstalledEcdsaCustodySnapshotV1(input: {
240
+ readonly source: EcdsaMaterialReadSource;
230
241
  readonly walletId: WalletId;
231
242
  readonly materialActivation: MpcMaterialActivationRef;
232
- }): Promise<readonly InstalledLinkedDeviceEcdsaAuthorityProjectionV1[]>;
243
+ }): Promise<InstalledEcdsaCustodySnapshotV1 | null>;
233
244
  private readVerifiedEcdsaInstallations;
234
245
  readActivationCleanupReceiptV1(input: {
235
246
  readonly linkSessionId: LinkDeviceSessionId;
@@ -264,7 +275,15 @@ export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
264
275
  private readInstallation;
265
276
  private readInstallationByAuthority;
266
277
  private readInstallationsByWallet;
278
+ private prepareInstallationsByWalletRead;
267
279
  }
280
+ export declare function parseInstalledEcdsaCustodySnapshotV1(input: {
281
+ readonly scope: D1LinkedDeviceAuthorityInstallServiceOptionsV1['scope'];
282
+ readonly walletId: WalletId;
283
+ readonly materialActivation: MpcMaterialActivationRef;
284
+ readonly installations: unknown;
285
+ readonly signers: unknown;
286
+ }): Promise<InstalledEcdsaCustodySnapshotV1 | null>;
268
287
  /**
269
288
  * The installed Ed25519 authority of a linked device, read from Gateway SQL
270
289
  * alone: a linked device approving another link names its own binding as the
@@ -16,7 +16,13 @@ export declare class D1LinkedDeviceEmailOtpGrantStoreV1 {
16
16
  readonly database: D1DatabaseLike;
17
17
  readonly scope: D1LinkedDeviceSessionScopeV1;
18
18
  });
19
- issueV1(record: LinkedDeviceEmailOtpGrantRecordV1): Promise<void>;
19
+ issueV1(record: LinkedDeviceEmailOtpGrantRecordV1): Promise<{
20
+ readonly kind: 'issued';
21
+ } | {
22
+ readonly kind: 'refused';
23
+ readonly code: 'link_session_inactive';
24
+ readonly message: string;
25
+ }>;
20
26
  readByIdV1(grantId: string): Promise<LinkedDeviceEmailOtpGrantRecordV1 | null>;
21
27
  /**
22
28
  * The consumption as statements: a CAS flip from `issued` to `consumed`
@@ -1,5 +1,3 @@
1
- import { type LinkDeviceSessionId } from '../../../../../../shared-ts/src/signing-lanes/ids';
2
- import { type DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
3
1
  import type { D1DatabaseLike } from '../../../../storage/tenantRoute';
4
2
  import type { LinkedDeviceRequestProofNonceStoreV1 } from '../../../../core/deviceLinking/requestProof';
5
3
  import type { D1LinkedDeviceSessionScopeV1 } from './d1LinkedDeviceSessionStore';
@@ -11,14 +9,7 @@ export declare class D1LinkedDeviceRequestProofNonceStoreV1 implements LinkedDev
11
9
  private readonly database;
12
10
  private readonly scope;
13
11
  constructor(options: D1LinkedDeviceRequestProofNonceStoreOptionsV1);
14
- consumeRequestProofNonceV1(input: {
15
- readonly linkSessionId: LinkDeviceSessionId;
16
- readonly requestNonceB64u: string;
17
- readonly proofDigestB64u: DigestB64u;
18
- readonly issuedAtMs: number;
19
- readonly expiresAtMs: number;
20
- readonly consumedAtMs: number;
21
- }): Promise<{
12
+ consumeRequestProofNonceV1(input: unknown): Promise<{
22
13
  readonly outcome: 'consumed';
23
14
  } | {
24
15
  readonly outcome: 'already_used';
@@ -1,8 +1,12 @@
1
+ import type { LinkedDeviceBootstrapStore } from '../../../../core/deviceLinking/linkedDeviceBootstrap';
1
2
  import type { D1DatabaseLike } from '../../../../storage/tenantRoute';
2
3
  import type { DeviceLinkingAuthDeniedV1, DeviceLinkingAuthenticatedRequestV1, DeviceLinkingOwnerRequestInputV1, DeviceLinkingRouteServiceV1 } from '../../../../router/transport/fetch/routes/deviceLinking';
4
+ import { type LinkedDeviceRequestProofNonceStoreV1 } from '../../../../core/deviceLinking/requestProof';
3
5
  import type { LinkedDeviceOwnerAuthorizationPortV1 } from '../../../../core/deviceLinking/linkedDeviceSession';
4
6
  import { type D1LinkedDeviceSessionScopeV1 } from './d1LinkedDeviceSessionStore';
5
7
  export type D1LinkedDeviceRouteServiceOptionsV1 = {
8
+ readonly bootstrap?: LinkedDeviceBootstrapStore;
9
+ readonly proofNonces?: LinkedDeviceRequestProofNonceStoreV1;
6
10
  readonly database: D1DatabaseLike;
7
11
  readonly scope: D1LinkedDeviceSessionScopeV1;
8
12
  readonly ownerAuthorization: LinkedDeviceOwnerAuthorizationPortV1;
@@ -1,3 +1,4 @@
1
+ import { type LinkedDeviceBootstrapStore } from '../../../../core/deviceLinking/linkedDeviceBootstrap';
1
2
  import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
2
3
  import type { LinkedDeviceApprovalV1, LinkedDeviceSessionClaimV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
3
4
  import type { LinkedDeviceSessionListCursorV1, LinkedDeviceSessionListPageV1, LinkedDeviceSessionStoreV1 } from '../../../../core/deviceLinking/linkedDeviceSession';
@@ -5,13 +6,10 @@ import { type LinkedDeviceSessionMutationResultV1, type LinkedDeviceSessionRecor
5
6
  import { type LinkDeviceSessionId } from '../../../../../../shared-ts/src/signing-lanes/ids';
6
7
  import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
7
8
  import type { WalletAuthorityId, WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
8
- export type D1LinkedDeviceSessionScopeV1 = {
9
- readonly namespace: string;
10
- readonly orgId: string;
11
- readonly projectId: string;
12
- readonly envId: string;
13
- };
9
+ import type { D1TenantScope } from '../../../../core/d1TenantStore';
10
+ export type D1LinkedDeviceSessionScopeV1 = D1TenantScope;
14
11
  export type D1LinkedDeviceSessionStoreOptionsV1 = {
12
+ readonly bootstrap?: LinkedDeviceBootstrapStore;
15
13
  readonly database: D1DatabaseLike;
16
14
  readonly scope: D1LinkedDeviceSessionScopeV1;
17
15
  readonly now?: () => number;
@@ -19,11 +17,15 @@ export type D1LinkedDeviceSessionStoreOptionsV1 = {
19
17
  /** Aborts the batch it is in when the statement just before it changed no row. */
20
18
  export declare const SESSION_CAS_GUARD_SQL = "INSERT INTO linked_device_session_cas_guard (guard_id)\nSELECT 1\n WHERE changes() = 0";
21
19
  export declare class D1LinkedDeviceSessionStoreV1 implements LinkedDeviceSessionStoreV1 {
20
+ private readonly bootstrap;
22
21
  private readonly database;
23
22
  private readonly scope;
24
23
  constructor(options: D1LinkedDeviceSessionStoreOptionsV1);
25
24
  createUnclaimedSessionV1(record: LinkedDeviceSessionRecordV1): Promise<LinkedDeviceSessionMutationResultV1>;
26
25
  getSessionV1(linkSessionId: LinkDeviceSessionId): Promise<LinkedDeviceSessionRecordV1 | null>;
26
+ private sessionInsertStatement;
27
+ private importClaimedSession;
28
+ private readLocalSession;
27
29
  private deleteRetiredShapeSessionRowV1;
28
30
  listSessionsForWalletV1(input: {
29
31
  readonly walletId: WalletId;
@@ -6,6 +6,7 @@ import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking
6
6
  import type { DeviceLinkingTargetCredentialProviderV1, LinkedDeviceTargetPreparationResultV1 } from '../../../../router/transport/fetch/routes/deviceLinking';
7
7
  import { type D1LinkedDeviceSessionScopeV1 } from './d1LinkedDeviceSessionStore';
8
8
  import { type VerifiedLinkSourceReadV1, type VerifiedLinkSourceReaderV1 } from './d1LinkedDeviceVerifiedLinkBuilder';
9
+ import type { ReadonlyExclusiveUnion } from '../../../../../../shared-ts/src/utils/variant';
9
10
  export type VerifiedLinkedDeviceWebAuthnCredentialV1 = {
10
11
  readonly credentialIdB64u: string;
11
12
  readonly credentialPublicKeyB64u: string;
@@ -36,15 +37,13 @@ export type VerifiedLinkedDeviceEmailOtpGrantV1 = (VerifiedLinkedDeviceEmailOtpG
36
37
  * per target factor. A Passkey commit cannot carry a grant and an Email OTP
37
38
  * commit cannot carry WebAuthn material.
38
39
  */
39
- export type VerifiedLinkedDeviceTargetFactorEvidenceV1 = {
40
+ export type VerifiedLinkedDeviceTargetFactorEvidenceV1 = ReadonlyExclusiveUnion<{
40
41
  readonly kind: 'passkey_prf';
41
42
  readonly credential: VerifiedLinkedDeviceWebAuthnCredentialV1;
42
- readonly grant?: never;
43
43
  } | {
44
44
  readonly kind: 'email_otp';
45
45
  readonly grant: VerifiedLinkedDeviceEmailOtpGrantV1;
46
- readonly credential?: never;
47
- };
46
+ }>;
48
47
  /**
49
48
  * The complete registered-target replay record. It is kept as one payload so
50
49
  * a retry can finish the session CAS without rereading mutable source state.
@@ -171,15 +170,13 @@ export declare class D1LinkedDeviceTargetCredentialProviderV1 implements DeviceL
171
170
  readonly session: LinkedDeviceSessionRecordV1;
172
171
  readonly approval: LinkedDeviceApprovalV1;
173
172
  readonly requestedAtMs: number;
174
- } & ({
173
+ } & ReadonlyExclusiveUnion<{
175
174
  readonly access: 'create_or_replay';
176
175
  readonly expectedOrigin: string;
177
176
  readonly deliveryRecipientPublicKey65B64u: string;
178
177
  } | {
179
178
  readonly access: 'replay_only';
180
- readonly expectedOrigin?: never;
181
- readonly deliveryRecipientPublicKey65B64u?: never;
182
- })): Promise<LinkedDeviceTargetPreparationResultV1>;
179
+ }>): Promise<LinkedDeviceTargetPreparationResultV1>;
183
180
  registerTargetCredentialV1(input: {
184
181
  readonly registration: LinkedDeviceTargetCredentialRegistrationV1;
185
182
  readonly preparation: LinkedDeviceTargetPreparationV1;
@@ -1,8 +1,7 @@
1
1
  import type { LinkedDeviceApprovalV1, LinkedDeviceTargetPreparationV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
2
2
  import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
3
3
  import type { MpcMaterialActivationRef, WebAuthnRpId } from '../../../../../../shared-ts/src/utils/domainIds';
4
- import type { ActiveLaneProtocolSourceV1, EcdsaTargetCapabilityBindingV1, LaneTargetSigningWorkerV1 } from '../../../../../../shared-ts/src/signing-lanes/rotation';
5
- import type { LaneHolderParticipantId } from '../../../../../../shared-ts/src/signing-lanes/participants';
4
+ import type { ActiveLaneProtocolSourceV1 } from '../../../../../../shared-ts/src/signing-lanes/rotation';
6
5
  import type { EvmFamilySigningKeySlotId } from '../../../../../../shared-ts/src/signing-lanes/evmFamilySigningKeySlotId';
7
6
  import type { KeyCreationSignerSlot } from '../../../../../../shared-ts/src/passkey-custody/primitives';
8
7
  import type { Ed25519PublicKeyB64u } from '../../../../../../shared-ts/src/passkey-custody/primitives';
@@ -44,17 +43,6 @@ type LinkedDeviceOwnerEcdsaSourceChildResolutionV1 = LinkedDeviceOwnerSourceChil
44
43
  readonly linkedSourceMaterialActivation?: MpcMaterialActivationRef;
45
44
  };
46
45
  export type LinkedDeviceOwnerSourceChildResolutionV1 = LinkedDeviceOwnerEd25519SourceChildResolutionV1 | LinkedDeviceOwnerEcdsaSourceChildResolutionV1;
47
- export type LinkedDeviceTargetEnrichedChildResolutionV1 = (LinkedDeviceOwnerEd25519SourceChildResolutionV1 & {
48
- readonly targetHolderParticipantId: LaneHolderParticipantId;
49
- readonly targetSigningWorker: LaneTargetSigningWorkerV1;
50
- readonly yaoSuiteId: import('../../../../../../shared-ts/src/signing-lanes/ids').Ed25519YaoSuiteId;
51
- readonly circuitDigestB64u: string;
52
- }) | (LinkedDeviceOwnerEcdsaSourceChildResolutionV1 & {
53
- readonly targetHolderParticipantId: LaneHolderParticipantId;
54
- readonly targetSigningWorker: LaneTargetSigningWorkerV1;
55
- readonly targetCapability: EcdsaTargetCapabilityBindingV1;
56
- readonly reshareChannelBindingDigestB64u: string;
57
- });
58
46
  export type LinkedDeviceTargetPreparationResolutionV1 = LinkedDeviceOwnerSourceChildResolutionV1;
59
47
  export type LinkedDeviceOwnerSourceChildResolutionRequestV1 = {
60
48
  readonly kind: 'preparation';
@@ -4,7 +4,7 @@ import type { CloudflareD1EmailOtpChallengeStore } from './d1EmailOtpChallengeSt
4
4
  import type { CloudflareD1EmailOtpChallengeVerifier } from './d1EmailOtpChallengeVerifier';
5
5
  import type { CloudflareD1EmailOtpGrantStore } from './d1EmailOtpGrantStore';
6
6
  import type { CloudflareD1EmailOtpRegistrationEnrollmentFinalizer } from './d1EmailOtpRegistrationEnrollmentFinalizer';
7
- import type { CloudflareD1GoogleEmailOtpRegistrationAttemptStore } from './d1GoogleEmailOtpRegistrationAttemptStore';
7
+ import type { GoogleEmailOtpRegistrationAttemptStore } from './d1GoogleEmailOtpRegistrationAttemptStore';
8
8
  type CreateEmailOtpChallengeInput = Parameters<RouterApiEmailOtpRouteService['createEmailOtpChallenge']>[0];
9
9
  type CreateEmailOtpChallengeResult = Awaited<ReturnType<RouterApiEmailOtpRouteService['createEmailOtpChallenge']>>;
10
10
  type CreateEmailOtpEnrollmentChallengeInput = Parameters<RouterApiEmailOtpRouteService['createEmailOtpEnrollmentChallenge']>[0];
@@ -33,7 +33,7 @@ export declare class CloudflareD1EmailOtpChallengeService {
33
33
  readonly grantTtlMs: number;
34
34
  readonly grants: CloudflareD1EmailOtpGrantStore;
35
35
  readonly issuer: CloudflareD1EmailOtpChallengeIssuer;
36
- readonly registrationAttempts: CloudflareD1GoogleEmailOtpRegistrationAttemptStore;
36
+ readonly registrationAttempts: GoogleEmailOtpRegistrationAttemptStore;
37
37
  readonly verifier: CloudflareD1EmailOtpChallengeVerifier;
38
38
  });
39
39
  createEmailOtpChallenge(input: CreateEmailOtpChallengeInput): Promise<CreateEmailOtpChallengeResult>;
@@ -12,7 +12,7 @@ type EmailOtpRegistrationVerificationReceiptConsumeResult = {
12
12
  } | {
13
13
  readonly kind: 'challenge_missing';
14
14
  };
15
- export type EmailOtpChallengeContextInput = {
15
+ type EmailOtpChallengeContextInput = {
16
16
  readonly challengeSubjectId: string;
17
17
  readonly walletId: string;
18
18
  readonly orgId: string;
@@ -1,15 +1,9 @@
1
1
  import type { EmailOtpAuthStateRecord, EmailOtpWalletEnrollmentRecord } from '../../../../core/EmailOtpStores';
2
2
  import { type ScopedD1Prepare } from '../../../../core/emailOtpD1Statements';
3
3
  import type { D1PreparedStatementLike } from '../../../../storage/tenantRoute';
4
+ import type { EmailOtpAuthStateReadResult as CoreEmailOtpAuthStateReadResult } from '../../../../core/authService/emailOtpEnrollment';
4
5
  import { type EmailOtpAuthStatePatch } from './d1EmailOtpRecords';
5
- export type EmailOtpAuthStateReadResult = {
6
- readonly ok: true;
7
- readonly state: EmailOtpAuthStateRecord | null;
8
- } | {
9
- readonly ok: false;
10
- readonly code: string;
11
- readonly message: string;
12
- };
6
+ export type EmailOtpAuthStateReadResult = Readonly<CoreEmailOtpAuthStateReadResult>;
13
7
  export declare class CloudflareD1EmailOtpEnrollmentStore {
14
8
  private readonly prepare;
15
9
  constructor(input: {
@@ -7,7 +7,5 @@ export declare class CloudflareD1EmailOtpGrantStore {
7
7
  });
8
8
  put(record: EmailOtpGrantRecord): Promise<void>;
9
9
  consume(grantToken: string): Promise<EmailOtpGrantRecord | null>;
10
- read(grantToken: string): Promise<EmailOtpGrantRecord | null>;
11
- delete(grantToken: string): Promise<void>;
12
10
  }
13
11
  //# sourceMappingURL=d1EmailOtpGrantStore.d.ts.map
@@ -1,4 +1,5 @@
1
1
  import type { ScopedD1Prepare } from '../../../../core/emailOtpD1Statements';
2
+ import type { RateLimitResult } from '../../../../core/authService/rateLimits';
2
3
  import type { EmailOtpRateLimitPolicy } from '../auth/d1RouterApiAuthConfig';
3
4
  import { type EmailOtpRateLimitScope } from './d1EmailOtpRecords';
4
5
  type EmailOtpRateLimitPolicies = {
@@ -13,24 +14,32 @@ type EmailOtpRateLimitConsumeInput = {
13
14
  readonly orgId?: string;
14
15
  readonly clientIp?: string;
15
16
  };
16
- type EmailOtpRateLimitConsumeResult = {
17
- readonly ok: true;
18
- } | {
19
- readonly ok: false;
20
- readonly code: 'rate_limited';
21
- readonly message: string;
22
- readonly retryAfterMs?: number;
23
- readonly resetAtMs?: number;
24
- };
17
+ type EmailOtpRateLimitConsumeResult = Readonly<RateLimitResult>;
25
18
  export declare class CloudflareD1EmailOtpRateLimitStore {
26
- private readonly prepare;
27
19
  private readonly rateLimits;
20
+ private readonly counter;
28
21
  constructor(input: {
29
22
  readonly prepare: ScopedD1Prepare;
30
23
  readonly rateLimits: EmailOtpRateLimitPolicies;
24
+ readonly counter?: EmailOtpRateLimitCounter;
31
25
  });
32
26
  consume(input: EmailOtpRateLimitConsumeInput): Promise<EmailOtpRateLimitConsumeResult>;
33
- private consumeKey;
27
+ }
28
+ export interface EmailOtpRateLimitCounter {
29
+ consume(input: {
30
+ readonly key: string;
31
+ readonly limit: number;
32
+ readonly windowMs: number;
33
+ }): Promise<EmailOtpRateLimitConsumeResult>;
34
+ }
35
+ export declare class D1EmailOtpRateLimitCounter implements EmailOtpRateLimitCounter {
36
+ private readonly prepare;
37
+ constructor(prepare: ScopedD1Prepare);
38
+ consume(input: {
39
+ readonly key: string;
40
+ readonly limit: number;
41
+ readonly windowMs: number;
42
+ }): Promise<EmailOtpRateLimitConsumeResult>;
34
43
  }
35
44
  export {};
36
45
  //# sourceMappingURL=d1EmailOtpRateLimitStore.d.ts.map
@@ -1,7 +1,8 @@
1
- import { EMAIL_OTP_CHANNEL, WALLET_EMAIL_OTP_ACTIONS } from '../../../../../../shared-ts/src/utils/emailOtpDomain';
2
- import type { EmailOtpAuthStateRecord, EmailOtpChallengeOperation, EmailOtpChallengeRecord, EmailOtpGrantAction, EmailOtpGrantRecord, EmailOtpLoginChallengeOperation, EmailOtpUnlockChallengeRecord, EmailOtpWalletEnrollmentRecord } from '../../../../core/EmailOtpStores';
3
- export type EmailOtpChallengeIssueAction = typeof WALLET_EMAIL_OTP_ACTIONS.login | typeof WALLET_EMAIL_OTP_ACTIONS.registration | typeof WALLET_EMAIL_OTP_ACTIONS.recoveryBootstrap | typeof WALLET_EMAIL_OTP_ACTIONS.deviceLink;
4
- export type EmailOtpRateLimitScope = 'challenge' | 'verify' | 'grant' | 'googleRegistrationAttempt';
1
+ import { EMAIL_OTP_CHANNEL } from '../../../../../../shared-ts/src/utils/emailOtpDomain';
2
+ import type { EmailOtpAuthStateRecord, EmailOtpChallengeAction, EmailOtpChallengeOperation, EmailOtpChallengeRecord, EmailOtpGrantAction, EmailOtpGrantRecord, EmailOtpLoginChallengeOperation, EmailOtpUnlockChallengeRecord, EmailOtpWalletEnrollmentRecord } from '../../../../core/EmailOtpStores';
3
+ import type { EmailOtpRateLimitScope } from '../../../../core/authService/emailOtpConfig';
4
+ export type EmailOtpChallengeIssueAction = EmailOtpChallengeAction;
5
+ export type { EmailOtpRateLimitScope };
5
6
  export type EmailOtpAuthStatePatch = {
6
7
  readonly otpFailureCount?: number | null;
7
8
  readonly lastOtpFailureAtMs?: number | null;
@@ -183,5 +184,4 @@ export declare function emailOtpChallengePurposeIsValid(input: {
183
184
  readonly action: EmailOtpChallengeIssueAction;
184
185
  readonly operation: EmailOtpChallengeOperation;
185
186
  }): boolean;
186
- export {};
187
187
  //# sourceMappingURL=d1EmailOtpRecords.d.ts.map
@@ -1,22 +1,12 @@
1
1
  import type { EmailOtpServerSealRuntimeConfig } from '../auth/d1RouterApiAuthConfig';
2
- type EmailOtpServerSealInput = {
3
- readonly wrappedCiphertext?: unknown;
4
- };
5
- type EmailOtpServerSealResult = {
6
- readonly ok: true;
7
- readonly ciphertext: string;
8
- readonly enrollmentSealKeyVersion: string;
9
- } | {
10
- readonly ok: false;
11
- readonly code: string;
12
- readonly message: string;
13
- };
2
+ import type { EmailOtpServerSealRequest, EmailOtpServerSealResult as CoreEmailOtpServerSealResult } from '../../../../core/authService/emailOtpSeal';
3
+ type EmailOtpServerSealResult = Readonly<CoreEmailOtpServerSealResult>;
14
4
  export declare class CloudflareD1EmailOtpServerSealRuntime {
15
5
  private readonly config;
16
6
  private readonly cipherResult;
17
7
  constructor(config: EmailOtpServerSealRuntimeConfig);
18
- removeEmailOtpServerSeal(input: EmailOtpServerSealInput): Promise<EmailOtpServerSealResult>;
19
- applyEmailOtpServerSeal(input: EmailOtpServerSealInput): Promise<EmailOtpServerSealResult>;
8
+ removeEmailOtpServerSeal(input: EmailOtpServerSealRequest): Promise<EmailOtpServerSealResult>;
9
+ applyEmailOtpServerSeal(input: EmailOtpServerSealRequest): Promise<EmailOtpServerSealResult>;
20
10
  private runServerSealOperation;
21
11
  private createCipher;
22
12
  }
@@ -1,13 +1,25 @@
1
+ import type { D1DatabaseLike } from '../../../../storage/tenantRoute';
1
2
  import type { RuntimePolicyScope } from '../../../../../../shared-ts/src/threshold/signingRootScope';
2
3
  import type { GoogleEmailOtpRegistrationAttemptRecord, NonEmptyGoogleEmailOtpRegistrationOfferCandidates, PendingGoogleEmailOtpRegistrationAttemptRecord } from '../../../../core/EmailOtpStores';
3
4
  import { type ScopedD1Prepare } from '../../../../core/emailOtpD1Statements';
4
5
  export declare class CloudflareD1GoogleEmailOtpRegistrationAttemptStore {
5
6
  private readonly prepare;
6
7
  private readonly orgId;
8
+ private readonly batch;
7
9
  constructor(input: {
8
10
  readonly prepare: ScopedD1Prepare;
9
11
  readonly orgId: string;
12
+ readonly batch: D1DatabaseLike['batch'];
10
13
  });
14
+ complete(input: {
15
+ readonly attemptId: string;
16
+ readonly walletId: string;
17
+ }): Promise<import("./d1GoogleRegistrationCompletion").GoogleRegistrationCompletionResult>;
18
+ completeCommitted(input: {
19
+ readonly attemptId: string;
20
+ readonly walletId: string;
21
+ readonly intentDigest: string;
22
+ }): Promise<import("./d1GoogleRegistrationCompletion").GoogleRegistrationCompletionResult>;
11
23
  cleanupExpired(nowMs: number): Promise<number>;
12
24
  create(input: {
13
25
  readonly providerSubject: string;
@@ -42,8 +54,24 @@ export declare class CloudflareD1GoogleEmailOtpRegistrationAttemptStore {
42
54
  readonly walletId: string;
43
55
  readonly nowMs: number;
44
56
  }): Promise<boolean>;
57
+ claimCandidate(input: {
58
+ readonly attemptId: string;
59
+ readonly candidateId: string;
60
+ readonly walletId: string;
61
+ readonly intentDigest: string;
62
+ }): Promise<RegistrationCandidateClaimResult>;
45
63
  read(attemptId: string): Promise<GoogleEmailOtpRegistrationAttemptRecord | null>;
46
64
  put(record: GoogleEmailOtpRegistrationAttemptRecord): Promise<void>;
47
- delete(attemptId: string): Promise<void>;
65
+ private deleteMalformedUnclaimed;
48
66
  }
67
+ export type GoogleEmailOtpRegistrationAttemptStore = Pick<CloudflareD1GoogleEmailOtpRegistrationAttemptStore, keyof CloudflareD1GoogleEmailOtpRegistrationAttemptStore>;
68
+ export type RegistrationCandidateClaimResult = {
69
+ readonly ok: true;
70
+ readonly code?: never;
71
+ readonly message?: never;
72
+ } | {
73
+ readonly ok: false;
74
+ readonly code: 'registration_candidate_unavailable';
75
+ readonly message: string;
76
+ };
49
77
  //# sourceMappingURL=d1GoogleEmailOtpRegistrationAttemptStore.d.ts.map