@seams/wallet-server 0.6.2 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifact-manifest.json +147 -32
- package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/deriver-a/index.js +2 -2
- package/cloudflare-router-ab/build/deriver-a/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/deriver-b/index.js +2 -2
- package/cloudflare-router-ab/build/deriver-b/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/local-tools/darwin-arm64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/local-tools/darwin-x64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/router/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/router/index.js +2 -2
- package/cloudflare-router-ab/build/router/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/signing-worker/index.js +2 -2
- package/cloudflare-router-ab/build/signing-worker/index_bg.wasm +0 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -0
- package/cloudflare-router-ab/build/tenant-root-control-plane/index.js +2 -2
- package/cloudflare-router-ab/build/tenant-root-control-plane/index_bg.wasm +0 -0
- package/cloudflare-router-ab/migrations/deriver-a/0012_tenant_root_creation_tombstones.sql +20 -0
- package/cloudflare-router-ab/migrations/deriver-a/0013_tenant_root_root_use_admissions.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-a/0014_tenant_root_refresh_supersessions.sql +24 -0
- package/cloudflare-router-ab/migrations/deriver-a/0015_tenant_root_root_use_attempts.sql +56 -0
- package/cloudflare-router-ab/migrations/deriver-a/0016_tenant_root_root_use_admission_settlement.sql +5 -0
- package/cloudflare-router-ab/migrations/deriver-a/0017_tenant_root_root_use_admission_claims.sql +64 -0
- package/cloudflare-router-ab/migrations/deriver-a/0018_tenant_root_recovery_retention_keys.sql +12 -0
- package/cloudflare-router-ab/migrations/deriver-b/0012_tenant_root_creation_tombstones.sql +20 -0
- package/cloudflare-router-ab/migrations/deriver-b/0013_tenant_root_root_use_admissions.sql +32 -0
- package/cloudflare-router-ab/migrations/deriver-b/0014_tenant_root_refresh_supersessions.sql +24 -0
- package/cloudflare-router-ab/migrations/deriver-b/0015_tenant_root_root_use_attempts.sql +56 -0
- package/cloudflare-router-ab/migrations/deriver-b/0016_tenant_root_root_use_admission_settlement.sql +5 -0
- package/cloudflare-router-ab/migrations/deriver-b/0017_tenant_root_root_use_admission_claims.sql +64 -0
- package/cloudflare-router-ab/migrations/deriver-b/0018_tenant_root_recovery_retention_keys.sql +12 -0
- package/cloudflare-router-ab/scripts/bootstrap-local-tenant-root.mjs +81 -16
- package/cloudflare-router-ab/scripts/prepare-local-runtime-config.mjs +102 -9
- package/cloudflare-router-ab/scripts/start-local-role-workers.mjs +4 -1
- package/cloudflare-router-ab/wrangler.deriver-a.toml +24 -0
- package/cloudflare-router-ab/wrangler.router.toml +13 -0
- package/dist/esm/authorization/capabilityPolicy.js +1 -1
- package/dist/esm/authorization/domain.js +2 -2
- package/dist/esm/authorization/factorEvidence.js +6 -100
- package/dist/esm/authorization/service.js +34 -2
- package/dist/esm/authorization/vaultProxyUse.js +3 -4
- package/dist/esm/cloud-host.js +16 -11
- package/dist/esm/core/EmailOtpRecords.js +19 -1
- package/dist/esm/core/EmailOtpStores.js +323 -924
- package/dist/esm/core/IdentityStore.js +44 -235
- package/dist/esm/core/NearPublicKeyStore.js +21 -63
- package/dist/esm/core/RegistrationCeremonyStore.js +3 -1793
- package/dist/esm/core/ThresholdService/config.js +1 -82
- package/dist/esm/core/ThresholdService/kv.js +3 -3
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.js +37 -5
- package/dist/esm/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.js +4 -74
- package/dist/esm/core/ThresholdService/stores/CloudflareDurableObjectStore.js +15 -51
- package/dist/esm/core/ThresholdService/stores/KeyStore.js +3 -3
- package/dist/esm/core/ThresholdService/stores/SessionStore.js +5 -81
- package/dist/esm/core/ThresholdService/stores/WalletSessionStore.js +185 -290
- package/dist/esm/core/ThresholdService/validation.js +18 -230
- package/dist/esm/core/WalletAuthMethodStore.js +22 -79
- package/dist/esm/core/WalletStore.js +58 -185
- package/dist/esm/core/WebAuthnAuthenticatorStore.js +57 -340
- package/dist/esm/core/WebAuthnCredentialBindingStore.js +90 -369
- package/dist/esm/core/WebAuthnLoginChallengeStore.js +17 -397
- package/dist/esm/core/WebAuthnSyncChallengeStore.js +17 -397
- package/dist/esm/core/authService/AuthService.js +2 -19
- package/dist/esm/core/authService/emailOtpChallengeProof.js +1 -1
- package/dist/esm/core/authService/emailOtpChallenges.js +1 -1
- package/dist/esm/core/authService/emailOtpConfig.js +1 -32
- package/dist/esm/core/authService/emailOtpRegistrationEnrollment.js +6 -153
- package/dist/esm/core/authService/googleEmailOtpRegistration.js +1 -1
- package/dist/esm/core/authService/nearPrivateKeySigning.js +7 -15
- package/dist/esm/core/authService/nearTransactions.js +2 -1
- package/dist/esm/core/authService/oidcVerification.js +3 -4
- package/dist/esm/core/authService/rateLimits.js +1 -31
- package/dist/esm/core/authService/registrationThresholdHelpers.js +2 -103
- package/dist/esm/core/authService/storeRegistry.js +2 -13
- package/dist/esm/core/authService/thresholdEcdsaKeyInventory.js +4 -5
- package/dist/esm/core/authService/webauthn.js +15 -50
- package/dist/esm/core/authService/webauthnOidcHelpers.js +1 -6
- package/dist/esm/core/authService/webauthnVerificationOutcomes.js +60 -0
- package/dist/esm/core/authService/webauthnWalletBinding.js +2 -122
- package/dist/esm/core/d1IdentityStore.js +32 -66
- package/dist/esm/core/d1TenantStore.js +82 -0
- package/dist/esm/core/d1WalletAuthMethodStore.js +92 -143
- package/dist/esm/core/d1WalletStore.js +14 -12
- package/dist/esm/core/deviceLinking/linkedDeviceEmailOtpGrant.js +10 -8
- package/dist/esm/core/deviceLinking/linkedDeviceManagement.js +25 -3
- package/dist/esm/core/deviceLinking/linkedDeviceSession.js +6 -895
- package/dist/esm/core/deviceLinking/linkedDeviceSessionApproval.js +102 -0
- package/dist/esm/core/deviceLinking/linkedDeviceSessionRecord.js +668 -0
- package/dist/esm/core/emailOtpD1Statements.js +383 -0
- package/dist/esm/core/hostedAccountIds.js +2 -2
- package/dist/esm/core/keyMaterialBrands.js +2 -48
- package/dist/esm/core/nearRelayerAccountProvisioning.js +25 -150
- package/dist/esm/core/nearSignerWasmRuntime.js +1 -4
- package/dist/esm/core/rpcClients/near/NearClient.js +15 -218
- package/dist/esm/core/signingLanes/LaneEnrollmentActivation.js +1 -1
- package/dist/esm/core/signingLanes/LaneLifecycleApplicationService.js +2 -4
- package/dist/esm/core/signingLanes/LaneLifecycleStore.js +0 -24
- package/dist/esm/core/signingLanes/WalletExecutionLaneProjection.js +5 -5
- package/dist/esm/core/signingLanes/ecdsaServerRetirement.js +3 -8
- package/dist/esm/core/signingLanes/ed25519ServerRetirement.js +1 -4
- package/dist/esm/core/storeBackends.js +208 -0
- package/dist/esm/core/thresholdEcdsaChainTarget.js +1 -7
- package/dist/esm/core/webAuthnD1Statements.js +92 -0
- package/dist/esm/core/webAuthnStoreBackends.js +198 -0
- package/dist/esm/hosted-wallet-gateway.js +33 -16
- package/dist/esm/index.js +2 -2
- package/dist/esm/local-hosted-wallet-gateway-worker.js +2 -23
- package/dist/esm/localHostedWalletGatewayHandler.js +299 -0
- package/dist/esm/localIntendedEcdsaFinalizeFault.js +85 -0
- package/dist/esm/localIntendedLinkExecuteFault.js +140 -0
- package/dist/esm/localIntendedRevokeFault.js +106 -0
- package/dist/esm/localIntendedSessionAdmissionFault.js +139 -0
- package/dist/esm/localIntendedYaoExportFault.js +117 -0
- package/dist/esm/localIntendedYaoFault.js +13 -16
- package/dist/esm/localIntendedYaoFinalizeFault.js +99 -0
- package/dist/esm/localIntendedYaoRecoveryFault.js +102 -0
- package/dist/esm/localIntendedYaoSigningFault.js +127 -0
- package/dist/esm/router/auth/authRequestValidation.js +1 -1
- package/dist/esm/router/auth/commonRouterUtils.js +10 -2
- package/dist/esm/router/auth/walletSessionFailure.js +1 -14
- package/dist/esm/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.js +23 -0
- package/dist/esm/router/cloudflare/d1/auth/d1RouterApiAuthService.js +86 -66
- package/dist/esm/router/cloudflare/d1/authorization/authorizedOperationStatements.js +208 -0
- package/dist/esm/router/cloudflare/d1/authorization/d1AuthorizationStore.js +246 -296
- package/dist/esm/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.js +14 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.js +62 -63
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.js +3 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.js +1 -19
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceManagementService.js +4 -3
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.js +52 -9
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRequestProofNonceStore.js +3 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.js +100 -0
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.js +7 -10
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.js +33 -124
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.js +2 -2
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.js +9 -17
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.js +6 -6
- package/dist/esm/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkSourceReader.js +3 -1
- package/dist/esm/router/cloudflare/d1/deviceLinking/index.js +3 -3
- package/dist/esm/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.js +69 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.js +39 -68
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.js +69 -0
- package/dist/esm/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoProductRegistrationPartitionedStateStore.js +2 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.js +26 -71
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.js +20 -3
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.js +7 -94
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.js +5 -47
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.js +26 -123
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.js +0 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.js +2 -2
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.js +15 -134
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.js +54 -260
- package/dist/esm/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpSessionResolver.js +1 -1
- package/dist/esm/router/cloudflare/d1/identity/d1IdentityRecords.js +1 -28
- package/dist/esm/router/cloudflare/d1/near/d1NearPublicKeyStore.js +2 -8
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.js +1 -1
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.js +3 -3
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.js +23 -73
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.js +15 -2
- package/dist/esm/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.js +12 -203
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.js +16 -32
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.js +29 -72
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.js +4 -1
- package/dist/esm/router/cloudflare/d1/registration/d1RegistrationIntentService.js +3 -1
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.js +6 -30
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationService.js +261 -205
- package/dist/esm/router/cloudflare/d1/registration/d1WalletRegistrationSetup.js +5 -3
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.js +2 -2
- package/dist/esm/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.js +3 -3
- package/dist/esm/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.js +43 -25
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.js +0 -1
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneLifecycleStore.js +1 -1
- package/dist/esm/router/cloudflare/d1/signingLanes/d1LaneRecords.js +2 -1
- package/dist/esm/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.js +2 -60
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAddSignerService.js +158 -19
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.js +19 -49
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.js +100 -0
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthMethodService.js +132 -33
- package/dist/esm/router/cloudflare/d1/wallet/d1WalletAuthorityStore.js +83 -4
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnAuthService.js +14 -49
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnRecords.js +4 -4
- package/dist/esm/router/cloudflare/d1/webauthn/d1WebAuthnStore.js +22 -116
- package/dist/esm/router/cloudflare/runtime/createSelfHostedCloudflareSigningWorker.js +1 -2
- package/dist/esm/router/cloudflare/runtime/walletConsoleTenantRootLineage.js +11 -2
- package/dist/esm/router/cloudflare/runtime/walletGateway.js +1 -1
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneCurveExecution.js +5 -6
- package/dist/esm/router/cloudflare/signingLanes/cloudflareLaneProtocolCommitter.js +2 -1
- package/dist/esm/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.js +48 -21
- package/dist/esm/router/cloudflare.js +11480 -12853
- package/dist/esm/router/domains/ecdsa/routerAbEcdsaStrictRegistration.js +16 -5
- package/dist/esm/router/domains/ecdsa/thresholdEcdsaRequestValidation.js +2 -8
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.js +33 -0
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.js +17 -9
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.js +29 -431
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.js +7 -2
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.js +2 -1
- package/dist/esm/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.js +70 -2
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.js +134 -169
- package/dist/esm/router/domains/ed25519Yao/export/routerAbEd25519YaoExportRequestScopedCloudflare.js +77 -162
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.js +205 -51
- package/dist/esm/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryRequestScopedCloudflare.js +29 -11
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.js +182 -55
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.js +2 -1
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.js +63 -247
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.js +3 -2
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.js +87 -132
- package/dist/esm/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.js +5 -4
- package/dist/esm/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.js +45 -0
- package/dist/esm/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.js +1 -1
- package/dist/esm/router/domains/emailOtp/emailOtpExportPolicy.js +1 -42
- package/dist/esm/router/domains/emailOtp/emailOtpRequestValidation.js +1 -6
- package/dist/esm/router/domains/emailOtp/emailOtpSessionRouteHelpers.js +1 -142
- package/dist/esm/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.js +1 -1
- package/dist/esm/router/domains/passkeyCustody/walletCustodyRegistrationCommit.js +2 -2
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryFinalization.js +23 -45
- package/dist/esm/router/domains/passkeyCustody/walletRecoveryKeyManifest.js +5 -5
- package/dist/esm/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.js +1 -1
- package/dist/esm/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.js +827 -0
- package/dist/esm/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.js +698 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmission.js +209 -0
- package/dist/esm/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.js +16 -15
- package/dist/esm/router/domains/signingOperations/routerAbOperationStepUp.js +313 -0
- package/dist/esm/router/domains/signingOperations/routerAbPrivateSigningWorker.js +62 -2159
- package/dist/esm/router/domains/tenantRoot/tenantRootIdentityResolution.js +1 -1
- package/dist/esm/router/domains/walletRegistration/walletRegistrationRoutes.js +18 -22
- package/dist/esm/router/domains/walletRegistration/walletRegistrationSetupPayload.js +3 -4
- package/dist/esm/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.js +2 -2
- package/dist/esm/router/domains/walletUnlock/walletUnlockRouteHandlers.js +97 -150
- package/dist/esm/router/express.js +5967 -6410
- package/dist/esm/router/framework/http.js +1 -4
- package/dist/esm/router/framework/ror/normalize.js +1 -1
- package/dist/esm/router/framework/routerApiRouteSurface.js +1 -1
- package/dist/esm/router/node/nodeHostedWalletGateway.js +64 -0
- package/dist/esm/router/node/nodeHostedWalletGatewayCheck.js +163 -0
- package/dist/esm/router/node/nodeHostedWalletGatewayMain.js +120 -0
- package/dist/esm/router/node/nodeHttp.js +79 -0
- package/dist/esm/router/node/nodeSqlite.js +43 -0
- package/dist/esm/router/node/signerSqlMigrations.js +48 -0
- package/dist/esm/router/transport/fetch/createFetchRouter.js +1 -1
- package/dist/esm/router/transport/fetch/routes/deviceLinking.js +16 -18
- package/dist/esm/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.js +3 -5
- package/dist/esm/router/transport/fetch/routes/deviceManagement.js +15 -24
- package/dist/esm/router/transport/fetch/routes/normalSigningRouterProxy.js +3 -16
- package/dist/esm/router/transport/fetch/routes/passkeyCustody.js +144 -461
- package/dist/esm/router/transport/fetch/routes/sessions.js +4 -4
- package/dist/esm/router/transport/fetch/routes/syncAccount.js +4 -6
- package/dist/esm/router/transport/fetch/routes/syncAccountBootstrap.js +2 -2
- package/dist/esm/router/transport/fetch/routes/thresholdEcdsa.js +69 -23
- package/dist/esm/router/transport/fetch/routes/thresholdEd25519.js +52 -27
- package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +1 -1
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +1 -1
- package/dist/esm/shared-ts/src/authorization/operationFingerprint.js +1 -2
- package/dist/esm/shared-ts/src/authorization/walletAuthority.js +99 -227
- package/dist/esm/shared-ts/src/authorization/walletCustodyOperation.js +4 -6
- package/dist/esm/shared-ts/src/device-linking/activeWalletSession.js +74 -0
- package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +50 -0
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +8 -9
- package/dist/esm/shared-ts/src/device-linking/delegatedActivationPlan.js +3 -1
- package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +55 -0
- package/dist/esm/shared-ts/src/device-linking/digests.js +10 -65
- package/dist/esm/shared-ts/src/device-linking/ed25519ExportRoot.js +3 -1
- package/dist/esm/shared-ts/src/device-linking/index.js +4 -1
- package/dist/esm/shared-ts/src/device-linking/parsers.js +510 -1063
- package/dist/esm/shared-ts/src/device-linking/requestProof.js +5 -14
- package/dist/esm/shared-ts/src/device-linking/sourceContribution.js +6 -9
- package/dist/esm/shared-ts/src/device-linking/walletSessionCredentialDelivery.js +9 -9
- package/dist/esm/shared-ts/src/device-linking/wireFields.js +59 -0
- package/dist/esm/shared-ts/src/near/nearClient.js +252 -0
- package/dist/esm/shared-ts/src/passkey-custody/credentialActivity.js +3 -1
- package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +7 -5
- package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +6 -4
- package/dist/esm/shared-ts/src/passkey-custody/primitives.js +5 -39
- package/dist/esm/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.js +1 -5
- package/dist/esm/shared-ts/src/signing-lanes/index.js +3 -3
- package/dist/esm/shared-ts/src/signing-lanes/ownerContinuity.js +5 -12
- package/dist/esm/shared-ts/src/signing-lanes/participantDigest.js +5 -14
- package/dist/esm/shared-ts/src/signing-lanes/participants.js +2 -5
- package/dist/esm/shared-ts/src/signing-lanes/recordParsers.js +7 -5
- package/dist/esm/shared-ts/src/signing-lanes/rotationDigests.js +6 -45
- package/dist/esm/shared-ts/src/signing-lanes/rotationParsers.js +423 -1511
- package/dist/esm/shared-ts/src/signing-lanes/rotationProtocolParsers.js +323 -0
- package/dist/esm/shared-ts/src/signing-lanes/rotationWireFields.js +59 -0
- package/dist/esm/shared-ts/src/tenant-root/tenantRootOperationRecord.js +1 -1
- package/dist/esm/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.js +1 -2
- package/dist/esm/shared-ts/src/threshold/keyMaterialBrands.js +49 -0
- package/dist/esm/shared-ts/src/utils/addAuthMethodRegistration.js +3 -4
- package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +8 -1
- package/dist/esm/shared-ts/src/utils/digestEncoding.js +63 -0
- package/dist/esm/shared-ts/src/utils/emailOtpDomain.js +2 -2
- package/dist/esm/shared-ts/src/utils/exactRecord.js +44 -0
- package/dist/esm/shared-ts/src/utils/registrationAuthMethodInput.js +127 -0
- package/dist/esm/shared-ts/src/utils/registrationEstablishedSession.js +2 -2
- package/dist/esm/shared-ts/src/utils/registrationIds.js +280 -0
- package/dist/esm/shared-ts/src/utils/registrationIntent.js +4 -1170
- package/dist/esm/shared-ts/src/utils/registrationSignerPlan.js +429 -0
- package/dist/esm/shared-ts/src/utils/routerAbEcdsaDerivation.js +11 -136
- package/dist/esm/shared-ts/src/utils/routerAbEd25519Yao.js +3 -163
- package/dist/esm/shared-ts/src/utils/routerAbEd25519YaoDigests.js +160 -0
- package/dist/esm/shared-ts/src/utils/routerAbNormalSigningIdentity.js +1 -4
- package/dist/esm/shared-ts/src/utils/routerAbPublicKeyset.js +7 -15
- package/dist/esm/shared-ts/src/utils/validation.js +37 -6
- package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +362 -0
- package/dist/esm/shared-ts/src/utils/wireSchema.js +77 -0
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeLocator.js +1 -1
- package/dist/esm/shared-ts/src/wallet-recovery/recoveryCodeReservation.js +1 -1
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.js +7 -11
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.js +4 -8
- package/dist/esm/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.js +3 -1
- package/dist/esm/storage/d1Sql.js +10 -1
- package/dist/esm/storage/syncSqlite.js +79 -0
- package/dist/esm/threshold/session/signingSessionSeal/crypto/cipher.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/idempotencyRecords.js +1 -2
- package/dist/esm/threshold/session/signingSessionSeal/options.js +1 -1
- package/dist/esm/threshold/session/signingSessionSeal/transport/shared.js +18 -55
- package/dist/esm/threshold/statusCodes.js +1 -1
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker.js +3 -3
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker_bg.wasm +0 -0
- package/dist/types/shared-ts/src/authorization/capabilityKinds.d.ts +8 -26
- package/dist/types/shared-ts/src/authorization/delegatedAuthority.d.ts +0 -8
- package/dist/types/shared-ts/src/authorization/operationFingerprint.d.ts +1 -3
- package/dist/types/shared-ts/src/authorization/walletAuthority.d.ts +25 -12
- package/dist/types/shared-ts/src/authorization/walletSessionIssuance.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/activeWalletSession.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/authorityActivation.d.ts +5 -0
- package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +2 -5
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +8 -11
- package/dist/types/shared-ts/src/device-linking/contracts.typecheck.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/deviceManagement.d.ts +7 -0
- package/dist/types/shared-ts/src/device-linking/digests.d.ts +0 -5
- package/dist/types/shared-ts/src/device-linking/ed25519ExportRoot.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/index.d.ts +2 -0
- package/dist/types/shared-ts/src/device-linking/parsers.d.ts +4 -41
- package/dist/types/shared-ts/src/device-linking/requestProof.d.ts +0 -1
- package/dist/types/shared-ts/src/device-linking/sourceContribution.d.ts +3 -2
- package/dist/types/shared-ts/src/device-linking/walletSessionCredentialDelivery.d.ts +2 -1
- package/dist/types/shared-ts/src/device-linking/wireFields.d.ts +26 -0
- package/dist/types/shared-ts/src/near/actions.d.ts +4 -4
- package/dist/types/shared-ts/src/near/delegate.d.ts +3 -2
- package/dist/types/shared-ts/src/near/nearClient.d.ts +145 -0
- package/dist/types/shared-ts/src/passkey-custody/ceremonyCommitPayload.d.ts +0 -22
- package/dist/types/shared-ts/src/passkey-custody/credentialActivity.d.ts +2 -4
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +9 -18
- package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +8 -24
- package/dist/types/shared-ts/src/passkey-custody/index.d.ts +0 -2
- package/dist/types/shared-ts/src/passkey-custody/primitives.d.ts +0 -14
- package/dist/types/shared-ts/src/signing-lanes/evmFamilySigningKeySlotId.d.ts +0 -15
- package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +2 -51
- package/dist/types/shared-ts/src/signing-lanes/index.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/ownerContinuity.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/participantDigest.d.ts +5 -27
- package/dist/types/shared-ts/src/signing-lanes/participants.d.ts +0 -11
- package/dist/types/shared-ts/src/signing-lanes/recordParsers.d.ts +6 -53
- package/dist/types/shared-ts/src/signing-lanes/records.d.ts +1 -2
- package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +15 -37
- package/dist/types/shared-ts/src/signing-lanes/rotationDigests.d.ts +1 -20
- package/dist/types/shared-ts/src/signing-lanes/rotationLifecycle.d.ts +4 -25
- package/dist/types/shared-ts/src/signing-lanes/rotationParsers.d.ts +1 -41
- package/dist/types/shared-ts/src/signing-lanes/rotationProtocolParsers.d.ts +6 -0
- package/dist/types/shared-ts/src/signing-lanes/rotationWireFields.d.ts +20 -0
- package/dist/types/shared-ts/src/threshold/ecdsaDerivationRoleLocalBootstrap.d.ts +2 -35
- package/dist/types/shared-ts/src/threshold/ed25519OperationFingerprint.d.ts +8 -35
- package/dist/types/shared-ts/src/threshold/keyMaterialBrands.d.ts +25 -0
- package/dist/types/shared-ts/src/threshold/participants.d.ts +3 -9
- package/dist/types/shared-ts/src/threshold/secp256k1.d.ts +0 -37
- package/dist/types/shared-ts/src/threshold/sessionPolicy.d.ts +24 -0
- package/dist/types/shared-ts/src/threshold/signingRootScope.d.ts +2 -5
- package/dist/types/shared-ts/src/utils/addAuthMethodRegistration.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +7 -108
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.typecheck.d.ts +16 -3
- package/dist/types/shared-ts/src/utils/canonicalPrimitives.d.ts +2 -0
- package/dist/types/shared-ts/src/utils/digestEncoding.d.ts +9 -0
- package/dist/types/shared-ts/src/utils/domainIds.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/ecdsaKeyFactsInventory.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/emailOtpDomain.d.ts +5 -5
- package/dist/types/shared-ts/src/utils/emailOtpRecoveryKey.d.ts +0 -2
- package/dist/types/shared-ts/src/utils/errors.d.ts +0 -7
- package/dist/types/shared-ts/src/utils/exactRecord.d.ts +12 -0
- package/dist/types/shared-ts/src/utils/index.d.ts +5 -2
- package/dist/types/shared-ts/src/utils/jsonRpc.d.ts +3 -2
- package/dist/types/shared-ts/src/utils/near.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/nearRpcResults.d.ts +7 -7
- package/dist/types/shared-ts/src/utils/normalize.d.ts +0 -4
- package/dist/types/shared-ts/src/utils/registrationAuthMethodInput.d.ts +184 -0
- package/dist/types/shared-ts/src/utils/registrationContracts.d.ts +76 -0
- package/dist/types/shared-ts/src/utils/registrationEstablishedSession.d.ts +1 -2
- package/dist/types/shared-ts/src/utils/registrationIds.d.ts +56 -0
- package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +9 -514
- package/dist/types/shared-ts/src/utils/registrationSignerPlan.d.ts +142 -0
- package/dist/types/shared-ts/src/utils/routerAbEcdsaDerivation.d.ts +21 -92
- package/dist/types/shared-ts/src/utils/routerAbEd25519Yao.d.ts +14 -99
- package/dist/types/shared-ts/src/utils/routerAbEd25519YaoDigests.d.ts +39 -0
- package/dist/types/shared-ts/src/utils/routerAbPublicKeyset.d.ts +10 -15
- package/dist/types/shared-ts/src/utils/routerAbTraceContext.d.ts +2 -1
- package/dist/types/shared-ts/src/utils/secureRandomId.d.ts +0 -2
- package/dist/types/shared-ts/src/utils/signerDomain.d.ts +3 -35
- package/dist/types/shared-ts/src/utils/signerSlot.d.ts +0 -4
- package/dist/types/shared-ts/src/utils/signingSessionSeal.d.ts +1 -7
- package/dist/types/shared-ts/src/utils/validation.d.ts +10 -10
- package/dist/types/shared-ts/src/utils/variant.d.ts +11 -0
- package/dist/types/shared-ts/src/utils/variant.typecheck.d.ts +22 -0
- package/dist/types/shared-ts/src/utils/walletAddSignerActivation.d.ts +2 -2
- package/dist/types/shared-ts/src/utils/walletAuthAuthority.d.ts +1 -58
- package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +104 -0
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +3 -7
- package/dist/types/shared-ts/src/utils/webauthnDeviceInfo.d.ts +3 -4
- package/dist/types/shared-ts/src/utils/wireSchema.d.ts +60 -0
- package/dist/types/shared-ts/src/wallet-recovery/backupAcknowledgement.d.ts +2 -1
- package/dist/types/shared-ts/src/wallet-recovery/index.d.ts +0 -1
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeLocator.d.ts +0 -16
- package/dist/types/shared-ts/src/wallet-recovery/recoveryCodeReservation.d.ts +2 -11
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryCommittedProjection.d.ts +6 -18
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEcdsaPossession.d.ts +0 -2
- package/dist/types/shared-ts/src/wallet-recovery/walletRecoveryEnvelopeSet.d.ts +1 -3
- package/dist/types/wallet-server/src/authorization/capabilityPolicy.d.ts +0 -1
- package/dist/types/wallet-server/src/authorization/domain.d.ts +25 -5
- package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.d.ts +37 -0
- package/dist/types/wallet-server/src/authorization/ecdsaWalletSessionAdmission.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/authorization/factorEvidence.d.ts +6 -7
- package/dist/types/wallet-server/src/authorization/service.d.ts +52 -3
- package/dist/types/wallet-server/src/cloud-host.d.ts +6 -2
- package/dist/types/wallet-server/src/core/EmailOtpRecords.d.ts +10 -1
- package/dist/types/wallet-server/src/core/EmailOtpStores.d.ts +16 -116
- package/dist/types/wallet-server/src/core/IdentityStore.d.ts +2 -7
- package/dist/types/wallet-server/src/core/NearPublicKeyStore.d.ts +6 -16
- package/dist/types/wallet-server/src/core/RegistrationCeremonyStore.d.ts +29 -90
- package/dist/types/wallet-server/src/core/ThresholdService/config.d.ts +0 -12
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPoolFillHandlers.d.ts +10 -3
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/ecdsaDerivationPresignBridge.d.ts +17 -48
- package/dist/types/wallet-server/src/core/ThresholdService/routerAb/internalServiceHttp.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/CloudflareDurableObjectStore.d.ts +4 -71
- package/dist/types/wallet-server/src/core/ThresholdService/stores/KeyStore.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/SessionStore.d.ts +4 -8
- package/dist/types/wallet-server/src/core/ThresholdService/stores/StoreConfig.d.ts +2 -1
- package/dist/types/wallet-server/src/core/ThresholdService/stores/WalletSessionStore.d.ts +1 -3
- package/dist/types/wallet-server/src/core/ThresholdService/validation.d.ts +14 -47
- package/dist/types/wallet-server/src/core/WalletAuthMethodStore.d.ts +2 -7
- package/dist/types/wallet-server/src/core/WalletStore.d.ts +3 -8
- package/dist/types/wallet-server/src/core/WebAuthnAuthenticatorStore.d.ts +7 -22
- package/dist/types/wallet-server/src/core/WebAuthnCredentialBindingStore.d.ts +14 -36
- package/dist/types/wallet-server/src/core/WebAuthnLoginChallengeStore.d.ts +9 -34
- package/dist/types/wallet-server/src/core/WebAuthnSyncChallengeStore.d.ts +9 -34
- package/dist/types/wallet-server/src/core/authService/AuthService.d.ts +0 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeOperations.d.ts +6 -5
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeProof.d.ts +9 -17
- package/dist/types/wallet-server/src/core/authService/emailOtpChallengeVerification.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/emailOtpChallenges.d.ts +7 -23
- package/dist/types/wallet-server/src/core/authService/emailOtpConfig.d.ts +3 -10
- package/dist/types/wallet-server/src/core/authService/emailOtpDelivery.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpGrant.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/emailOtpRegistrationEnrollment.d.ts +3 -70
- package/dist/types/wallet-server/src/core/authService/emailOtpSeal.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/emailOtpUnlock.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/googleEmailOtpRegistration.d.ts +5 -8
- package/dist/types/wallet-server/src/core/authService/nearPrivateKeySigning.d.ts +3 -2
- package/dist/types/wallet-server/src/core/authService/nearPublicKeyMetadata.d.ts +2 -1
- package/dist/types/wallet-server/src/core/authService/nearTransactions.d.ts +2 -1
- package/dist/types/wallet-server/src/core/authService/oidcVerification.d.ts +4 -3
- package/dist/types/wallet-server/src/core/authService/rateLimits.d.ts +0 -3
- package/dist/types/wallet-server/src/core/authService/registrationThresholdHelpers.d.ts +0 -26
- package/dist/types/wallet-server/src/core/authService/storeRegistry.d.ts +0 -5
- package/dist/types/wallet-server/src/core/authService/thresholdEcdsaKeyInventory.d.ts +0 -23
- package/dist/types/wallet-server/src/core/authService/webauthn.d.ts +8 -16
- package/dist/types/wallet-server/src/core/authService/webauthnOidcHelpers.d.ts +7 -7
- package/dist/types/wallet-server/src/core/authService/webauthnVerificationOutcomes.d.ts +43 -0
- package/dist/types/wallet-server/src/core/authService/webauthnWalletBinding.d.ts +1 -28
- package/dist/types/wallet-server/src/core/d1IdentityStore.d.ts +6 -16
- package/dist/types/wallet-server/src/core/d1TenantStore.d.ts +51 -0
- package/dist/types/wallet-server/src/core/d1WalletAuthMethodStore.d.ts +11 -29
- package/dist/types/wallet-server/src/core/d1WalletStore.d.ts +6 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEd25519ExportRoot.d.ts +2 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceEmailOtpGrant.d.ts +2 -1
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceManagement.d.ts +44 -26
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSession.d.ts +19 -217
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionApproval.d.ts +8 -0
- package/dist/types/wallet-server/src/core/deviceLinking/linkedDeviceSessionRecord.d.ts +259 -0
- package/dist/types/wallet-server/src/core/deviceLinking/requestProof.d.ts +2 -2
- package/dist/types/wallet-server/src/core/emailOtpD1Statements.d.ts +54 -0
- package/dist/types/wallet-server/src/core/hostedAccountIds.d.ts +0 -15
- package/dist/types/wallet-server/src/core/keyMaterialBrands.d.ts +4 -24
- package/dist/types/wallet-server/src/core/nearRelayerAccountProvisioning.d.ts +2 -3
- package/dist/types/wallet-server/src/core/nearSignerWasmRuntime.d.ts +0 -1
- package/dist/types/wallet-server/src/core/registrationContracts.d.ts +37 -108
- package/dist/types/wallet-server/src/core/routerAbSigning/RouterAbNormalSigningRuntime.d.ts +5 -4
- package/dist/types/wallet-server/src/core/rpcClients/near/NearClient.d.ts +10 -106
- package/dist/types/wallet-server/src/core/signingLanes/LaneAggregateRevocationApplicationService.d.ts +4 -3
- package/dist/types/wallet-server/src/core/signingLanes/LaneEffectJournalStore.d.ts +2 -3
- package/dist/types/wallet-server/src/core/signingLanes/LaneLifecycleStore.d.ts +2 -3
- package/dist/types/wallet-server/src/core/signingLanes/WalletExecutionLaneProjection.d.ts +3 -9
- package/dist/types/wallet-server/src/core/signingLanes/ecdsaServerRetirement.d.ts +4 -4
- package/dist/types/wallet-server/src/core/signingLanes/ed25519ServerRetirement.d.ts +3 -3
- package/dist/types/wallet-server/src/core/storeBackends.d.ts +83 -0
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.d.ts +13 -59
- package/dist/types/wallet-server/src/core/threeRouteRegistrationContracts.typecheck.d.ts +51 -3
- package/dist/types/wallet-server/src/core/thresholdEcdsaChainTarget.d.ts +0 -1
- package/dist/types/wallet-server/src/core/types.d.ts +3 -24
- package/dist/types/wallet-server/src/core/webAuthnD1Statements.d.ts +29 -0
- package/dist/types/wallet-server/src/core/webAuthnStoreBackends.d.ts +96 -0
- package/dist/types/wallet-server/src/hosted-wallet-gateway.d.ts +11 -7
- package/dist/types/wallet-server/src/index.d.ts +1 -1
- package/dist/types/wallet-server/src/local-hosted-wallet-gateway-worker.d.ts +1 -4
- package/dist/types/wallet-server/src/localHostedWalletGatewayHandler.d.ts +12 -0
- package/dist/types/wallet-server/src/localIntendedEcdsaFinalizeFault.d.ts +33 -0
- package/dist/types/wallet-server/src/localIntendedLinkExecuteFault.d.ts +47 -0
- package/dist/types/wallet-server/src/localIntendedRevokeFault.d.ts +40 -0
- package/dist/types/wallet-server/src/localIntendedSessionAdmissionFault.d.ts +41 -0
- package/dist/types/wallet-server/src/localIntendedYaoExportFault.d.ts +41 -0
- package/dist/types/wallet-server/src/localIntendedYaoFault.d.ts +7 -1
- package/dist/types/wallet-server/src/localIntendedYaoFinalizeFault.d.ts +37 -0
- package/dist/types/wallet-server/src/localIntendedYaoRecoveryFault.d.ts +45 -0
- package/dist/types/wallet-server/src/localIntendedYaoSigningFault.d.ts +51 -0
- package/dist/types/wallet-server/src/router/auth/authRequestValidation.d.ts +10 -21
- package/dist/types/wallet-server/src/router/auth/commonRouterUtils.d.ts +5 -10
- package/dist/types/wallet-server/src/router/auth/walletSessionFailure.d.ts +1 -4
- package/dist/types/wallet-server/src/router/auth/webAuthnCredentialCodecs.d.ts +3 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1AuthorizedOperationRouteService.d.ts +12 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthBoundary.d.ts +3 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthConfig.d.ts +2 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/auth/d1RouterApiAuthService.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/authorizedOperationStatements.d.ts +30 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts +45 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/persistedWalletSessionAuthorization.d.ts +3 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/walletSessionAuthorityProjection.d.ts +2 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceAuthorityInstallService.d.ts +57 -6
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpGrantStore.d.ts +2 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceEmailOtpTargetFactor.d.ts +8 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceOwnerAuthorizationProvider.d.ts +14 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceRevocation.d.ts +49 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionRecords.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSessionStore.d.ts +4 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceSourceContributionPreparationPlanner.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetCredentialProvider.d.ts +2 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceTargetPlanner.d.ts +8 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/d1LinkedDeviceVerifiedLinkBuilder.d.ts +3 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.d.ts +7 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoCapabilityPersistence.d.ts +1 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/ed25519Yao/d1Ed25519YaoLifecycleDecisionStore.d.ts +33 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeIssuer.d.ts +1 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeStore.d.ts +13 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpChallengeVerifier.d.ts +24 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpEnrollmentStore.d.ts +2 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpGrantStore.d.ts +1 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRateLimitStore.d.ts +3 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecords.d.ts +9 -8
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRecoveryService.d.ts +0 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1EmailOtpRegistrationEnrollmentFinalizer.d.ts +5 -4
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationAttemptStore.d.ts +1 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/emailOtp/d1GoogleEmailOtpRegistrationRecords.d.ts +3 -21
- package/dist/types/wallet-server/src/router/cloudflare/d1/identity/d1IdentityRecords.d.ts +0 -23
- package/dist/types/wallet-server/src/router/cloudflare/d1/near/d1NearPublicKeyStore.d.ts +1 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyEnvelopeStore.d.ts +11 -19
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1PasskeyCustodyRouteService.d.ts +5 -54
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletCustodyCommitStore.d.ts +7 -19
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpRecords.d.ts +4 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/passkeyCustody/d1WalletRecoveryGoogleEmailOtpService.d.ts +8 -12
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecordStore.d.ts +5 -8
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyRecords.d.ts +10 -22
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1RegistrationCeremonyStore.d.ts +6 -2
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationCommitStore.d.ts +10 -6
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationService.d.ts +15 -22
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/d1WalletRegistrationSetup.d.ts +5 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationEstablishedSessionIssuer.d.ts +4 -3
- package/dist/types/wallet-server/src/router/cloudflare/d1/registration/walletRegistrationSessionCommitReceipt.d.ts +5 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingAdmission/d1RouterAbNormalSigningAdmissionStore.d.ts +3 -5
- package/dist/types/wallet-server/src/router/cloudflare/d1/signingLanes/d1LaneEffectJournalStore.d.ts +0 -1
- package/dist/types/wallet-server/src/router/cloudflare/d1/versionedJson/d1VersionedJsonRecordStore.d.ts +0 -16
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAddSignerService.d.ts +29 -14
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodBoundary.d.ts +15 -12
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodRevocationReplayStore.d.ts +71 -0
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthMethodService.d.ts +34 -24
- package/dist/types/wallet-server/src/router/cloudflare/d1/wallet/d1WalletAuthorityStore.d.ts +44 -26
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnRecords.d.ts +3 -7
- package/dist/types/wallet-server/src/router/cloudflare/d1/webauthn/d1WebAuthnStore.d.ts +8 -19
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletConsoleTenantRootLineage.d.ts +2 -1
- package/dist/types/wallet-server/src/router/cloudflare/runtime/walletGateway.d.ts +1 -0
- package/dist/types/wallet-server/src/router/cloudflare/signingLanes/cloudflareOrdinaryInactiveSignerMaterialReservation.d.ts +15 -2
- package/dist/types/wallet-server/src/router/cloudflare-adaptor.d.ts +2 -2
- package/dist/types/wallet-server/src/router/domains/ecdsa/routerAbEcdsaStrictRegistration.d.ts +9 -7
- package/dist/types/wallet-server/src/router/domains/ecdsa/thresholdEcdsaRequestValidation.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision.d.ts +46 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistration.d.ts +5 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitionedStateStore.d.ts +20 -79
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationPartitioning.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRunner.d.ts +1 -1
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoProductRegistrationRequestScopedRuntime.d.ts +4 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/export/routerAbEd25519YaoExport.d.ts +62 -42
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecovery.d.ts +108 -32
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/recovery/routerAbEd25519YaoRecoveryActivation.typecheck.d.ts +5 -0
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoHttpRegistrationBackend.d.ts +36 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistration.d.ts +5 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationExecutionRecord.d.ts +41 -50
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationIntentAuthorization.d.ts +2 -2
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationRequestScopedCloudflare.d.ts +3 -3
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationSideEffectBoundary.d.ts +6 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/registration/routerAbEd25519YaoRegistrationTwoPhaseRunner.d.ts +14 -4
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/routerAbEd25519YaoGatewayEnvelope.d.ts +12 -1
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/routerAbEd25519YaoWalletSession.d.ts +5 -5
- package/dist/types/wallet-server/src/router/domains/ed25519Yao/session/thresholdEd25519RequestValidation.d.ts +3 -4
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpExportPolicy.d.ts +2 -27
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRequestValidation.d.ts +1 -2
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpRouteHandlers.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/emailOtp/emailOtpSessionRouteHelpers.d.ts +2 -102
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/envelopeRevocationAdmission.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrieval.d.ts +3 -2
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/passkeyCustodyEnvelopeRetrievalRoute.d.ts +1 -9
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/registrationCustodyOutcome.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/verifiedCustodyFactor.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationAdmission.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletCustodyRegistrationCommit.d.ts +2 -28
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryFinalization.d.ts +43 -1
- package/dist/types/wallet-server/src/router/domains/passkeyCustody/walletRecoveryKeyManifest.d.ts +7 -7
- package/dist/types/wallet-server/src/router/domains/signingOperations/ed25519AuthorizedOperationReceipt.d.ts +0 -3
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEcdsaDerivationNormalSigningRoute.d.ts +165 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbEd25519NormalSigningRoute.d.ts +110 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmission.d.ts +360 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.d.ts +11 -10
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbNormalSigningAdmissionCore.typecheck.d.ts +2 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbOperationStepUp.d.ts +165 -0
- package/dist/types/wallet-server/src/router/domains/signingOperations/routerAbPrivateSigningWorker.d.ts +16 -702
- package/dist/types/wallet-server/src/router/domains/signingOperations/walletExecutionAdmission.d.ts +5 -12
- package/dist/types/wallet-server/src/router/domains/syncAccount/syncAccountRequestValidation.d.ts +5 -4
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootCustodyLineage.d.ts +6 -1
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootIdentityResolution.d.ts +4 -7
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationInputs.d.ts +2 -1
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationRoutes.d.ts +8 -8
- package/dist/types/wallet-server/src/router/domains/walletRegistration/walletRegistrationSetupPayload.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRequestedCapabilitiesValidation.d.ts +4 -4
- package/dist/types/wallet-server/src/router/domains/walletUnlock/walletUnlockRouteHandlers.d.ts +4 -62
- package/dist/types/wallet-server/src/router/express-adaptor.d.ts +2 -2
- package/dist/types/wallet-server/src/router/framework/authServicePort.d.ts +64 -61
- package/dist/types/wallet-server/src/router/framework/http.d.ts +0 -1
- package/dist/types/wallet-server/src/router/framework/ror/normalize.d.ts +2 -2
- package/dist/types/wallet-server/src/router/framework/routeMeteringPolicy.d.ts +3 -2
- package/dist/types/wallet-server/src/router/framework/routerApi.d.ts +1 -1
- package/dist/types/wallet-server/src/router/framework/routerApiRouteSurface.d.ts +3 -3
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGateway.d.ts +34 -0
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayCheck.d.ts +21 -0
- package/dist/types/wallet-server/src/router/node/nodeHostedWalletGatewayMain.d.ts +2 -0
- package/dist/types/wallet-server/src/router/node/nodeHttp.d.ts +13 -0
- package/dist/types/wallet-server/src/router/node/nodeSqlite.d.ts +22 -0
- package/dist/types/wallet-server/src/router/node/signerSqlMigrations.d.ts +20 -0
- package/dist/types/wallet-server/src/router/transport/fetch/createFetchRouter.d.ts +1 -3
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinking.d.ts +5 -6
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceLinkingOwnerAuthorization.d.ts +2 -2
- package/dist/types/wallet-server/src/router/transport/fetch/routes/deviceManagement.d.ts +14 -16
- package/dist/types/wallet-server/src/router/transport/fetch/routes/normalSigningRouterProxy.d.ts +0 -12
- package/dist/types/wallet-server/src/router/transport/fetch/routes/passkeyCustody.d.ts +1 -1
- package/dist/types/wallet-server/src/router/transport/fetch/routes/sessions.d.ts +2 -1
- package/dist/types/wallet-server/src/router/transport/fetch/routes/syncAccountBootstrap.d.ts +7 -13
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEcdsa.d.ts +3 -57
- package/dist/types/wallet-server/src/router/transport/fetch/routes/thresholdEd25519.d.ts +0 -44
- package/dist/types/wallet-server/src/storage/d1Sql.d.ts +7 -0
- package/dist/types/wallet-server/src/storage/syncSqlite.d.ts +28 -0
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/crypto/shamir3PassWasm.d.ts +0 -1
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/idempotencyRecords.d.ts +5 -6
- package/dist/types/wallet-server/src/threshold/session/signingSessionSeal/transport/shared.d.ts +1 -0
- package/dist/types/wallet-server/src/threshold/statusCodes.d.ts +4 -4
- package/migrations/d1-signer/0036_r150_yao_lifecycle_decisions.sql +22 -0
- package/migrations/d1-signer/0037_r150_wallet_auth_method_revocation_replays.sql +26 -0
- package/migrations/d1-signer/0038_r150_registration_ceremony_cas_guard_seed.sql +8 -0
- package/migrations/d1-signer/0039_r150_revocation_replay_answer_kind.sql +9 -0
- package/package.json +1 -1
- package/dist/esm/core/ThresholdService/ecdsaClientRootProof.js +0 -27
- package/dist/esm/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.js +0 -115
- package/dist/esm/core/ThresholdService/secureRandomId.js +0 -9
- package/dist/esm/core/authService/record.js +0 -8
- package/dist/esm/core/authService/thresholdRuntimePolicy.js +0 -19
- package/dist/esm/core/authService/walletRegistrationPlanning.js +0 -49
- package/dist/esm/core/deviceLinking/index.js +0 -5
- package/dist/esm/core/errors.js +0 -54
- package/dist/esm/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.js +0 -39
- package/dist/esm/core/signingLanes/WalletKeyStore.js +0 -0
- package/dist/esm/core/signingLanes/index.js +0 -8
- package/dist/esm/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.js +0 -55
- package/dist/esm/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.js +0 -56
- package/dist/esm/shared-ts/src/signing-lanes/linkedEcdsaScope.js +0 -1
- package/dist/esm/wasm/router_ab_ecdsa_signing_worker/pkg/router_ab_ecdsa_signing_worker.js +0 -414
- package/dist/types/shared-ts/src/passkey-custody/credentialObservations.d.ts +0 -74
- package/dist/types/shared-ts/src/passkey-custody/kekContext.d.ts +0 -34
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.d.ts +0 -62
- package/dist/types/shared-ts/src/signing-lanes/linkedEcdsaScope.typecheck.d.ts +0 -2
- package/dist/types/shared-ts/src/signing-lanes/validation.d.ts +0 -11
- package/dist/types/shared-ts/src/utils/bigint.d.ts +0 -3
- package/dist/types/shared-ts/src/utils/paillier.d.ts +0 -37
- package/dist/types/shared-ts/src/utils/recoveryDomain.d.ts +0 -12
- package/dist/types/shared-ts/src/utils/signerDomain.typecheck.d.ts +0 -2
- package/dist/types/shared-ts/src/wallet-recovery/recoveryKekContext.d.ts +0 -37
- package/dist/types/wallet-server/src/core/ThresholdService/ecdsaClientRootProof.d.ts +0 -12
- package/dist/types/wallet-server/src/core/ThresholdService/routerAbEcdsaSigningWorkerWasm.d.ts +0 -17
- package/dist/types/wallet-server/src/core/ThresholdService/secureRandomId.d.ts +0 -2
- package/dist/types/wallet-server/src/core/authService/record.d.ts +0 -2
- package/dist/types/wallet-server/src/core/authService/thresholdRuntimePolicy.d.ts +0 -4
- package/dist/types/wallet-server/src/core/authService/walletRegistrationPlanning.d.ts +0 -19
- package/dist/types/wallet-server/src/core/deviceLinking/index.d.ts +0 -5
- package/dist/types/wallet-server/src/core/errors.d.ts +0 -10
- package/dist/types/wallet-server/src/core/routerAbSigning/createCloudflareDurableObjectRouterAbSigningRuntimes.d.ts +0 -28
- package/dist/types/wallet-server/src/core/signingLanes/SigningLaneStore.d.ts +0 -15
- package/dist/types/wallet-server/src/core/signingLanes/WalletKeyStore.d.ts +0 -13
- package/dist/types/wallet-server/src/core/signingLanes/index.d.ts +0 -11
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEcdsaWalletSessionComposition.d.ts +0 -35
- package/dist/types/wallet-server/src/router/domains/tenantRoot/tenantRootEd25519WalletSessionComposition.d.ts +0 -35
- /package/dist/esm/{core/signingLanes/SigningLaneStore.js → authorization/ecdsaWalletSessionAdmission.js} +0 -0
package/dist/types/wallet-server/src/router/cloudflare/d1/authorization/d1AuthorizationStore.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import type { EcdsaWalletSessionAdmissionInput, EcdsaWalletSessionAdmissionResult, PinnedOwnerWalletScope } from '../../../../authorization/ecdsaWalletSessionAdmission';
|
|
1
2
|
import { type MpcMaterialActivationRef, type WalletAuthorityId, type WalletAuthMethodId, type WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
2
3
|
import { type AuthorizedOperationId, type TenantId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
|
|
3
|
-
import type { AuthorizedOperation, AuthorizedOperationInput, IssuedWalletSessionAuthorizationV2, LiveWalletSessionAuthorizationProjectionV2, WalletSessionAuthorizationV2, ActiveWalletSessionQuota, PersistedActiveWalletSessionAuthorizationV2, DirectV2CommitResult, WalletSessionAuthorizationV2MintLookup, WalletSessionAuthorizationV2MintRead, AuthorizedOperationReplayResponse, CompletedCapabilityOperationResult, IssuedHostedWalletSeamsSessionExchangeV2, RedeemHostedWalletSeamsSessionExchangeV2Input, PersistedHostedWalletSeamsSessionExchangeV2Result, ExactWalletSessionQuotaProjectionV1, ExactWalletSessionStatusV2, WalletSessionExactOperationContext, ResolvedHostedWalletSessionOperationCredentialV2, VerifiedAuthorizationEvidenceSet, VerifiedOwnerProof } from '../../../../authorization/domain';
|
|
4
|
+
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';
|
|
4
5
|
import { type CapabilityOperationFingerprintDigest } from '../../../../../../shared-ts/src/authorization/operationFingerprint';
|
|
5
|
-
import type { AuthorizedOperationPort, AuthorizationEvidencePort, AuthorizationGrantPort, AuthorizationSessionPort, AuthorizedOperationMaterialScope } from '../../../../authorization/service';
|
|
6
|
+
import type { AuthorizedOperationAdmissionRejection, AuthorizedOperationPort, AuthorizationEvidencePort, AuthorizationGrantPort, AuthorizationSessionPort, AuthorizedOperationMaterialScope, AuthorizedOperationAdmissionResult, PreparedAuthorizedOperationAdmission } from '../../../../authorization/service';
|
|
6
7
|
import type { D1WalletStoreScope } from '../../../../core/d1WalletStore';
|
|
7
8
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
8
9
|
/**
|
|
@@ -10,7 +11,7 @@ import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storag
|
|
|
10
11
|
* rather than the wallet signer rows, so the exact-status material check needs
|
|
11
12
|
* this reader to recognize a linked session's capability subjects.
|
|
12
13
|
*/
|
|
13
|
-
|
|
14
|
+
type D1AuthorizationLinkedAuthorityMaterialReader = {
|
|
14
15
|
readInstalledEd25519AuthorityByMaterialActivationV1(input: {
|
|
15
16
|
readonly walletId: WalletId;
|
|
16
17
|
readonly materialActivation: MpcMaterialActivationRef;
|
|
@@ -20,7 +21,7 @@ export type D1AuthorizationLinkedAuthorityMaterialReader = {
|
|
|
20
21
|
readonly materialActivation: MpcMaterialActivationRef;
|
|
21
22
|
}): Promise<D1AuthorizationLinkedAuthorityMaterialProjection | null>;
|
|
22
23
|
};
|
|
23
|
-
|
|
24
|
+
type D1AuthorizationLinkedAuthorityMaterialProjection = {
|
|
24
25
|
readonly walletId: string;
|
|
25
26
|
readonly materialActivation: MpcMaterialActivationRef;
|
|
26
27
|
};
|
|
@@ -34,7 +35,6 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
34
35
|
private readonly database;
|
|
35
36
|
private readonly namespace;
|
|
36
37
|
private readonly walletSignerScope;
|
|
37
|
-
private readonly walletAuthorityStore;
|
|
38
38
|
private readonly walletStore;
|
|
39
39
|
private readonly getLinkedDeviceAuthorityReader;
|
|
40
40
|
constructor(options: D1AuthorizationStoreOptions);
|
|
@@ -96,7 +96,6 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
96
96
|
readonly session: WalletSessionAuthorizationV2;
|
|
97
97
|
readonly promotionAtMs: number;
|
|
98
98
|
}): readonly [D1PreparedStatementLike, D1PreparedStatementLike, D1PreparedStatementLike];
|
|
99
|
-
private existingWalletSessionAuthorizationV2QuotaMatches;
|
|
100
99
|
readWalletSessionAuthorizationV2ByMint(input: WalletSessionAuthorizationV2MintLookup): Promise<WalletSessionAuthorizationV2MintRead | null>;
|
|
101
100
|
readLiveWalletSessionAuthorizationProjectionV2(input: {
|
|
102
101
|
readonly expected: WalletSessionAuthorizationV2;
|
|
@@ -125,6 +124,16 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
125
124
|
readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
|
|
126
125
|
readonly nowMs: number;
|
|
127
126
|
}): Promise<IssuedWalletSessionAuthorizationV2 | null>;
|
|
127
|
+
/**
|
|
128
|
+
* The live session, its authority and its auth method from one joined read.
|
|
129
|
+
* A commit between separate reads could pair the session with an authority
|
|
130
|
+
* it was never bound to; one statement cannot.
|
|
131
|
+
*/
|
|
132
|
+
readWalletSessionAdmissionSnapshotByOperationCredential(input: {
|
|
133
|
+
readonly tenantId: WalletSessionAuthorizationV2['tenantId'];
|
|
134
|
+
readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
|
|
135
|
+
readonly nowMs: number;
|
|
136
|
+
}): Promise<WalletSessionAdmissionSnapshotV2 | null>;
|
|
128
137
|
readWalletSessionExactOperationContextByCredential(input: {
|
|
129
138
|
readonly tenantId: WalletSessionAuthorizationV2['tenantId'];
|
|
130
139
|
readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
|
|
@@ -142,7 +151,15 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
142
151
|
readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
|
|
143
152
|
readonly nowMs: number;
|
|
144
153
|
}): Promise<ExactWalletSessionStatusV2>;
|
|
145
|
-
|
|
154
|
+
/**
|
|
155
|
+
* The exact status with the authority and auth method it was judged
|
|
156
|
+
* against, all from the one joined read.
|
|
157
|
+
*/
|
|
158
|
+
readExactWalletSessionStatusSnapshotByOperationCredential(input: {
|
|
159
|
+
readonly tenantId: WalletSessionAuthorizationV2['tenantId'];
|
|
160
|
+
readonly tokenHash: import('../../../../../../shared-ts/src/utils/canonicalPrimitives').DigestB64u;
|
|
161
|
+
readonly nowMs: number;
|
|
162
|
+
}): Promise<ExactWalletSessionStatusSnapshotV2>;
|
|
146
163
|
private exactWalletSessionCapabilitySubjectsResolveMaterial;
|
|
147
164
|
private exactWalletSessionMaterialResolves;
|
|
148
165
|
private readLinkedAuthorityMaterial;
|
|
@@ -156,23 +173,29 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
156
173
|
readonly tenantId: TenantId;
|
|
157
174
|
readonly authorizedOperationId: AuthorizedOperationId;
|
|
158
175
|
}): Promise<AuthorizedOperation | null>;
|
|
159
|
-
|
|
176
|
+
readPinnedOwnerWalletScope(input: {
|
|
177
|
+
readonly operation: AuthorizedOperation;
|
|
178
|
+
readonly walletId: WalletId;
|
|
179
|
+
}): Promise<PinnedOwnerWalletScope>;
|
|
180
|
+
private pinnedWalletSessionOwnerScope;
|
|
181
|
+
private readAuthorizedOperationForAdmission;
|
|
182
|
+
/** How an operation already admitted for this fingerprint answers another admission. */
|
|
183
|
+
private answerExistingAuthorizedOperation;
|
|
184
|
+
/**
|
|
185
|
+
* The admission `admitAuthorizedOperation` would make, prepared for a batch
|
|
186
|
+
* another store owns, after the same reads. It admits no ECDSA material:
|
|
187
|
+
* that admission is conditional on the signer row, not a plain insert.
|
|
188
|
+
*/
|
|
189
|
+
prepareAuthorizedOperationAdmission(input: {
|
|
190
|
+
readonly operation: AuthorizedOperationInput;
|
|
191
|
+
}): Promise<PreparedAuthorizedOperationAdmission>;
|
|
192
|
+
classifyAuthorizedOperationAdmissionFailure(error: unknown): AuthorizedOperationAdmissionRejection | null;
|
|
160
193
|
admitAuthorizedOperation(input: {
|
|
161
194
|
readonly operation: AuthorizedOperationInput;
|
|
162
195
|
readonly material?: AuthorizedOperationMaterialScope;
|
|
163
|
-
}): Promise<
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
} | {
|
|
167
|
-
readonly kind: 'replayed';
|
|
168
|
-
readonly operation: AuthorizedOperation;
|
|
169
|
-
} | {
|
|
170
|
-
readonly kind: 'operation_in_progress';
|
|
171
|
-
readonly operation: AuthorizedOperation;
|
|
172
|
-
} | {
|
|
173
|
-
readonly kind: 'authorization_grant_rejected' | 'verified_step_up_rejected' | 'wallet_session_quota_exhausted' | 'material_mismatch';
|
|
174
|
-
}>;
|
|
175
|
-
private isAuthorizedOperationSourceActive;
|
|
196
|
+
}): Promise<AuthorizedOperationAdmissionResult>;
|
|
197
|
+
admitEcdsaWalletSessionOperation(input: EcdsaWalletSessionAdmissionInput): Promise<EcdsaWalletSessionAdmissionResult>;
|
|
198
|
+
private admitAuthorizedOperationRecord;
|
|
176
199
|
completeAuthorizedOperation(input: {
|
|
177
200
|
readonly operation: AuthorizedOperation;
|
|
178
201
|
readonly result: CompletedCapabilityOperationResult;
|
|
@@ -181,4 +204,5 @@ export declare class CloudflareD1AuthorizationStore implements AuthorizationSess
|
|
|
181
204
|
}): Promise<AuthorizedOperation>;
|
|
182
205
|
private readHostedWalletExchangeV2;
|
|
183
206
|
}
|
|
207
|
+
export {};
|
|
184
208
|
//# sourceMappingURL=d1AuthorizationStore.d.ts.map
|
|
@@ -3,7 +3,7 @@ import type { WalletAuthorityId, WalletId } from '../../../../../../shared-ts/sr
|
|
|
3
3
|
import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
4
4
|
import type { D1WalletStoreScope } from '../../../../core/d1WalletStore';
|
|
5
5
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
6
|
-
|
|
6
|
+
type WalletSessionAuthorityProjectionInput = {
|
|
7
7
|
readonly walletId: WalletId;
|
|
8
8
|
readonly authorityId: WalletAuthorityId;
|
|
9
9
|
readonly authorityDigestB64u: DigestB64u;
|
|
@@ -21,4 +21,5 @@ export declare function prepareD1WalletSessionAuthorityProjectionStatements(inpu
|
|
|
21
21
|
readonly scope: D1WalletStoreScope;
|
|
22
22
|
readonly projection: WalletSessionAuthorityProjectionInput;
|
|
23
23
|
}): readonly [D1PreparedStatementLike, D1PreparedStatementLike, D1PreparedStatementLike];
|
|
24
|
+
export {};
|
|
24
25
|
//# sourceMappingURL=walletSessionAuthorityProjection.d.ts.map
|
|
@@ -3,11 +3,11 @@ import { type LinkDeviceSessionId, type MpcMaterialActivationRef, type WalletAut
|
|
|
3
3
|
import { type DeviceId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
|
|
4
4
|
import { type PrincipalId, type TenantId, type WalletSessionAuthorizationId, type WalletSessionId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
|
|
5
5
|
import { type CommittedAuthorityPackagesV1 } from '../../../../../../shared-ts/src/device-linking/committedSignerPackages';
|
|
6
|
-
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
6
|
+
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
7
7
|
import type { LocalAuthorityActivationFinalAckV1, LocalAuthorityInstallationReceiptV1, OrdinarySignerMaterialReservationPreparationV1 as SharedOrdinarySignerMaterialReservationPreparationV1, VerifiedLinkInputV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
8
8
|
import { type LinkedDeviceWalletSessionCredentialDeliveryBindingV1, type LinkedDeviceWalletSessionCredentialDeliveryV1, type LinkedDeviceActivationCleanupReceiptV1 } from '../../../../../../shared-ts/src/device-linking/walletSessionCredentialDelivery';
|
|
9
9
|
import { type ExactAdministeredSignerV1 } from '../../../../../../shared-ts/src/device-linking/delegatedActivationPlan';
|
|
10
|
-
import { type
|
|
10
|
+
import { type ActiveWalletAuthMethodRecordV2 } from '../../../../../../shared-ts/src/utils/walletAuthMethodRecord';
|
|
11
11
|
import { OrdinaryInactiveSignerMaterialReservationServiceV1, type OrdinaryEcdsaSignerMaterialReservationPreparationV1, type OrdinaryEd25519SignerMaterialReservationPreparationV1 } from '../../../../core/signingMaterial/ordinaryInactiveSignerMaterialReservation';
|
|
12
12
|
import type { LinkedDeviceEcdsaSourcePreservingActivationReceiptV1 } from '../../../../../../shared-ts/src/device-linking/sourceContribution';
|
|
13
13
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
@@ -108,9 +108,7 @@ export type ActivateInstalledAuthorityResultV1 = {
|
|
|
108
108
|
readonly kind: 'active';
|
|
109
109
|
readonly outcome: 'activated' | 'replayed';
|
|
110
110
|
readonly authority: ActiveWalletAuthorityV1;
|
|
111
|
-
readonly authMethod:
|
|
112
|
-
readonly status: 'active';
|
|
113
|
-
}>;
|
|
111
|
+
readonly authMethod: ActiveWalletAuthMethodRecordV2;
|
|
114
112
|
readonly session: LinkedDeviceSessionRecordV1;
|
|
115
113
|
readonly walletSession: IssuedWalletSessionAuthorizationV2;
|
|
116
114
|
readonly deliveryBinding: LinkedDeviceWalletSessionCredentialDeliveryBindingV1;
|
|
@@ -141,6 +139,26 @@ export type LocalAuthorityActivationAcknowledgementAuthenticationV1 = {
|
|
|
141
139
|
readonly walletSessionId: WalletSessionId;
|
|
142
140
|
readonly expiresAtMs: number;
|
|
143
141
|
};
|
|
142
|
+
export type StoredInstallationRow = {
|
|
143
|
+
readonly linkSessionId: LinkDeviceSessionId;
|
|
144
|
+
readonly authorityId: WalletAuthorityId;
|
|
145
|
+
readonly walletId: WalletId;
|
|
146
|
+
readonly authMethodId: WalletAuthMethodId;
|
|
147
|
+
readonly deviceId: DeviceId;
|
|
148
|
+
readonly packageSetDigestB64u: DigestB64u;
|
|
149
|
+
readonly targetFactorVerificationDigestB64u: DigestB64u;
|
|
150
|
+
readonly targetFactorVerifiedAtMs: number;
|
|
151
|
+
readonly sourceManifestDigestB64u: DigestB64u;
|
|
152
|
+
/** Null is accepted only for legacy rows created before migration 0033. */
|
|
153
|
+
readonly deliveryRecipientPublicKey65B64u: string | null;
|
|
154
|
+
readonly packages: CommittedAuthorityPackagesV1;
|
|
155
|
+
readonly serverReservationIds: Readonly<{
|
|
156
|
+
readonly ed25519?: ServerReservationRecordV1<'ed25519'>;
|
|
157
|
+
readonly ecdsa_secp256k1?: ServerReservationRecordV1<'ecdsa_secp256k1'>;
|
|
158
|
+
}>;
|
|
159
|
+
readonly installedRecordSetDigestB64u: DigestB64u | null;
|
|
160
|
+
readonly activatedAtMs: number | null;
|
|
161
|
+
};
|
|
144
162
|
export type InstalledLinkedDeviceEd25519AuthorityProjectionV1 = {
|
|
145
163
|
readonly walletId: WalletId;
|
|
146
164
|
readonly authorityId: WalletAuthorityId;
|
|
@@ -170,6 +188,12 @@ export type InstalledLinkedDeviceEcdsaAuthorityProjectionV1 = {
|
|
|
170
188
|
readonly installedRecordSetDigestB64u: DigestB64u;
|
|
171
189
|
readonly activatedAtMs: number;
|
|
172
190
|
};
|
|
191
|
+
type ServerReservationRecordV1<F extends 'ed25519' | 'ecdsa_secp256k1'> = {
|
|
192
|
+
readonly reservationId: string;
|
|
193
|
+
readonly preparation: Extract<WorkerOrdinarySignerMaterialReservationPreparationV1, {
|
|
194
|
+
readonly keyFamily: F;
|
|
195
|
+
}>['preparation'];
|
|
196
|
+
};
|
|
173
197
|
export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
|
|
174
198
|
private readonly options;
|
|
175
199
|
private readonly nowV1;
|
|
@@ -202,6 +226,11 @@ export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
|
|
|
202
226
|
readonly walletId: WalletId;
|
|
203
227
|
readonly materialActivation: MpcMaterialActivationRef;
|
|
204
228
|
}): Promise<InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null>;
|
|
229
|
+
readInstalledEcdsaAuthorityChainByMaterialActivationV1(input: {
|
|
230
|
+
readonly walletId: WalletId;
|
|
231
|
+
readonly materialActivation: MpcMaterialActivationRef;
|
|
232
|
+
}): Promise<readonly InstalledLinkedDeviceEcdsaAuthorityProjectionV1[]>;
|
|
233
|
+
private readVerifiedEcdsaInstallations;
|
|
205
234
|
readActivationCleanupReceiptV1(input: {
|
|
206
235
|
readonly linkSessionId: LinkDeviceSessionId;
|
|
207
236
|
readonly requestedAtMs: number;
|
|
@@ -228,7 +257,6 @@ export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
|
|
|
228
257
|
private readCredentialDelivery;
|
|
229
258
|
private readCredentialDeliveryRow;
|
|
230
259
|
private buildWalletSessionAuthorizationInput;
|
|
231
|
-
private markInstalled;
|
|
232
260
|
private prepareAuthorityAllocation;
|
|
233
261
|
private prepareEmailOtpEnrollmentStatements;
|
|
234
262
|
private readAuthorityAllocation;
|
|
@@ -237,5 +265,28 @@ export declare class D1LinkedDeviceAuthorityInstallServiceV1 {
|
|
|
237
265
|
private readInstallationByAuthority;
|
|
238
266
|
private readInstallationsByWallet;
|
|
239
267
|
}
|
|
268
|
+
/**
|
|
269
|
+
* The installed Ed25519 authority of a linked device, read from Gateway SQL
|
|
270
|
+
* alone: a linked device approving another link names its own binding as the
|
|
271
|
+
* source. Null when a link did not install the authority. An installation
|
|
272
|
+
* that does not project refuses.
|
|
273
|
+
*/
|
|
274
|
+
export declare function readD1LinkedDeviceEd25519SourceV1(sql: Pick<D1LinkedDeviceAuthorityInstallServiceOptionsV1, 'database' | 'scope'>, input: {
|
|
275
|
+
readonly walletId: WalletId;
|
|
276
|
+
readonly authorityId: WalletAuthorityId;
|
|
277
|
+
readonly walletAuthMethodId: WalletAuthMethodId;
|
|
278
|
+
}): Promise<InstalledLinkedDeviceEd25519AuthorityProjectionV1 | null>;
|
|
279
|
+
/**
|
|
280
|
+
* The installed ECDSA authority of a linked device, read from Gateway SQL
|
|
281
|
+
* alone: a linked device approving another link contributes from it. Null
|
|
282
|
+
* when a link did not install the authority. An installation that does not
|
|
283
|
+
* project refuses, so a linked device never falls back to another device's
|
|
284
|
+
* material.
|
|
285
|
+
*/
|
|
286
|
+
export declare function readD1LinkedDeviceEcdsaSourceV1(sql: Pick<D1LinkedDeviceAuthorityInstallServiceOptionsV1, 'database' | 'scope'>, input: {
|
|
287
|
+
readonly walletId: WalletId;
|
|
288
|
+
readonly authorityId: WalletAuthorityId;
|
|
289
|
+
readonly walletAuthMethodId: WalletAuthMethodId;
|
|
290
|
+
}): Promise<InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null>;
|
|
240
291
|
export {};
|
|
241
292
|
//# sourceMappingURL=d1LinkedDeviceAuthorityInstallService.d.ts.map
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* verification grants.
|
|
2
|
+
* D1 persistence for linked-device Email OTP verification grants.
|
|
4
3
|
*
|
|
5
4
|
* A grant is issued once, after the emailed code verifies against the exact
|
|
6
5
|
* link-session binding, and consumed exactly once. The CAS guard makes a lost
|
|
@@ -9,7 +8,7 @@
|
|
|
9
8
|
*/
|
|
10
9
|
import { type LinkedDeviceEmailOtpGrantRecordV1 } from '../../../../core/deviceLinking/linkedDeviceEmailOtpGrant';
|
|
11
10
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
12
|
-
import type
|
|
11
|
+
import { type D1LinkedDeviceSessionScopeV1 } from './d1LinkedDeviceSessionStore';
|
|
13
12
|
export declare class D1LinkedDeviceEmailOtpGrantStoreV1 {
|
|
14
13
|
private readonly database;
|
|
15
14
|
private readonly scope;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
2
|
+
* The D1 composition behind the linked-device Email OTP challenge routes and
|
|
3
|
+
* the approval-time base-factor provenance reader.
|
|
4
4
|
*
|
|
5
5
|
* Everything identity-bearing is resolved server-side: the destination comes
|
|
6
6
|
* from the wallet's active verified enrollment, the base factor from the
|
|
7
7
|
* canonical wallet auth-method store, and the target authority identity
|
|
8
8
|
* from the enrollment identity. Device 2 supplies only the code it received
|
|
9
|
-
* and its worker's ephemeral recipient key. Challenges reuse the
|
|
9
|
+
* and its worker's ephemeral recipient key. Challenges reuse the Email OTP
|
|
10
10
|
* issuer, verifier, rate limits, and lockouts under the dedicated
|
|
11
11
|
* `wallet_email_otp_device_link` purpose, bound by a digest over the whole
|
|
12
12
|
* device-link context.
|
|
13
13
|
*/
|
|
14
14
|
import type { LinkedDeviceApprovalV1, LinkedDeviceEmailOtpFactorReleaseEnvelopeV1, LinkedDeviceEmailOtpBaseFactorRequestV1, LinkedDeviceEmailOtpBaseFactorResolutionV1, LinkedDeviceEmailOtpVerificationGrantV1, LinkedDeviceTargetPreparationV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
15
|
-
import type { WalletId
|
|
16
|
-
import type { WalletAuthMethodRecordV2 } from '../../../../../../shared-ts/src/utils/
|
|
17
|
-
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
15
|
+
import type { WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
16
|
+
import type { WalletAuthMethodRecordV2 } from '../../../../../../shared-ts/src/utils/walletAuthMethodRecord';
|
|
17
|
+
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
18
18
|
import type { D1WalletAuthorityStore } from '../wallet/d1WalletAuthorityStore';
|
|
19
19
|
import type { DeviceLinkingEmailOtpTargetFactorProviderV1 } from '../../../transport/fetch/routes/deviceLinking';
|
|
20
20
|
import type { LinkedDeviceEmailOtpGrantRegistrationPortV1, VerifiedLinkedDeviceEmailOtpGrantV1 } from './d1LinkedDeviceTargetCredentialProvider';
|
|
@@ -23,7 +23,7 @@ import type { CloudflareD1EmailOtpChallengeVerifier } from '../emailOtp/d1EmailO
|
|
|
23
23
|
import type { CloudflareD1EmailOtpEnrollmentStore } from '../emailOtp/d1EmailOtpEnrollmentStore';
|
|
24
24
|
import type { CloudflareD1EmailOtpServerSealRuntime } from '../emailOtp/d1EmailOtpServerSealRuntime';
|
|
25
25
|
import { type D1LinkedDeviceEmailOtpGrantStoreV1 } from './d1LinkedDeviceEmailOtpGrantStore';
|
|
26
|
-
|
|
26
|
+
type D1LinkedDeviceEmailOtpTargetFactorOptionsV1 = {
|
|
27
27
|
readonly issuer: Pick<CloudflareD1EmailOtpChallengeIssuer, 'create'>;
|
|
28
28
|
readonly verifier: Pick<CloudflareD1EmailOtpChallengeVerifier, 'verifyExisting' | 'verifyRegistration'>;
|
|
29
29
|
readonly enrollments: Pick<CloudflareD1EmailOtpEnrollmentStore, 'readEnrollment'>;
|
|
@@ -39,25 +39,11 @@ export type D1LinkedDeviceEmailOtpTargetFactorOptionsV1 = {
|
|
|
39
39
|
readonly grantTtlMs?: number;
|
|
40
40
|
readonly resendCooldownMs?: number;
|
|
41
41
|
};
|
|
42
|
-
export type LinkedDeviceEmailOtpTargetEnrollmentResolutionV1 = {
|
|
43
|
-
readonly kind: 'existing_enrollment';
|
|
44
|
-
readonly targetEmail: VerifiedEmailAddress;
|
|
45
|
-
} | {
|
|
46
|
-
readonly kind: 'new_enrollment';
|
|
47
|
-
readonly targetEmail: VerifiedEmailAddress;
|
|
48
|
-
} | {
|
|
49
|
-
readonly kind: 'conflict';
|
|
50
|
-
readonly message: string;
|
|
51
|
-
};
|
|
52
42
|
export declare class D1LinkedDeviceEmailOtpTargetFactorV1 implements DeviceLinkingEmailOtpTargetFactorProviderV1 {
|
|
53
43
|
private readonly options;
|
|
54
44
|
private readonly grantTtlMs;
|
|
55
45
|
private readonly resendCooldownMs;
|
|
56
46
|
constructor(options: D1LinkedDeviceEmailOtpTargetFactorOptionsV1);
|
|
57
|
-
resolveTargetEnrollmentV1(input: {
|
|
58
|
-
readonly walletId: WalletId;
|
|
59
|
-
readonly targetEmail: VerifiedEmailAddress;
|
|
60
|
-
}): Promise<LinkedDeviceEmailOtpTargetEnrollmentResolutionV1>;
|
|
61
47
|
resolveBaseFactorSelectionV1(input: {
|
|
62
48
|
readonly walletId: WalletId;
|
|
63
49
|
readonly request: LinkedDeviceEmailOtpBaseFactorRequestV1;
|
|
@@ -115,4 +101,5 @@ export declare class D1LinkedDeviceEmailOtpTargetFactorV1 implements DeviceLinki
|
|
|
115
101
|
private resolveBaseFactorV1;
|
|
116
102
|
}
|
|
117
103
|
export declare function linkedDeviceEmailOtpGrantRegistrationPortV1(provider: D1LinkedDeviceEmailOtpTargetFactorV1): LinkedDeviceEmailOtpGrantRegistrationPortV1;
|
|
104
|
+
export {};
|
|
118
105
|
//# sourceMappingURL=d1LinkedDeviceEmailOtpTargetFactor.d.ts.map
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import type { LinkedDeviceOwnerAuthorizationSourceV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
2
2
|
import { type DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
3
3
|
import type { WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
4
|
+
import { type WalletAuthMethodId, type WalletAuthorityId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
5
|
+
import type { InstalledLinkedDeviceEcdsaAuthorityProjectionV1, InstalledLinkedDeviceEd25519AuthorityProjectionV1 } from './d1LinkedDeviceAuthorityInstallService';
|
|
4
6
|
import type { D1WalletStore } from '../../../../core/d1WalletStore';
|
|
5
7
|
import type { D1WalletAuthMethodStore } from '../../../../core/d1WalletAuthMethodStore';
|
|
6
8
|
import type { RouterApiWalletRegistrationService } from '../../../framework/authServicePort';
|
|
7
|
-
import type { LinkedDeviceOwnerAuthorizationPortV1
|
|
9
|
+
import type { LinkedDeviceOwnerAuthorizationPortV1 } from '../../../../core/deviceLinking/linkedDeviceSession';
|
|
10
|
+
import type { LinkedDeviceSourceKeyManifestDigestsV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
8
11
|
import type { DeviceLinkingOwnerAuthorizationRouteServiceV1, DeviceLinkingOwnerWalletSessionContextV1 } from '../../../../router/transport/fetch/routes/deviceLinkingOwnerAuthorization';
|
|
9
12
|
import type { LinkedDeviceOwnerSourceChildResolutionRequestV1, LinkedDeviceOwnerSourceChildResolutionV1, LinkedDeviceOwnerSourceChildResolverV1, D1LinkedDeviceTargetPlannerOptionsV1, D1LinkedDeviceTargetPlannerV1 } from './d1LinkedDeviceTargetPlanner';
|
|
10
13
|
import { type VerifiedLinkSourceReadV1 } from './d1LinkedDeviceVerifiedLinkBuilder';
|
|
@@ -47,6 +50,15 @@ export type D1LinkedDeviceOwnerSourceChildReaderV1 = Pick<D1LinkedDeviceOwnerAut
|
|
|
47
50
|
export type D1LinkedDeviceOwnerSourceChildReaderOptionsV1 = {
|
|
48
51
|
readonly walletAuthMethodStore: Pick<D1WalletAuthMethodStore, 'listForWalletV2'>;
|
|
49
52
|
readonly walletStore: Pick<D1WalletStore, 'listEd25519SignersForWallet' | 'listEcdsaSignersForWallet'>;
|
|
53
|
+
/** A linked device's installed Ed25519 authority; null for one a link did not install. */
|
|
54
|
+
readonly readLinkedEd25519SourceV1: (input: LinkedDeviceSourceAuthorityIdentityV1) => Promise<InstalledLinkedDeviceEd25519AuthorityProjectionV1 | null>;
|
|
55
|
+
/** A linked device's installed ECDSA authority; null for one a link did not install. */
|
|
56
|
+
readonly readLinkedEcdsaSourceV1: (input: LinkedDeviceSourceAuthorityIdentityV1) => Promise<InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null>;
|
|
57
|
+
};
|
|
58
|
+
type LinkedDeviceSourceAuthorityIdentityV1 = {
|
|
59
|
+
readonly walletId: WalletId;
|
|
60
|
+
readonly authorityId: WalletAuthorityId;
|
|
61
|
+
readonly walletAuthMethodId: WalletAuthMethodId;
|
|
50
62
|
};
|
|
51
63
|
/** Builds authoritative source-child facts directly from the wallet stores. */
|
|
52
64
|
export declare function createD1LinkedDeviceOwnerSourceChildReaderV1(options: D1LinkedDeviceOwnerSourceChildReaderOptionsV1): D1LinkedDeviceOwnerSourceChildReaderV1;
|
|
@@ -77,4 +89,5 @@ export type D1LinkedDeviceOwnerAuthorizationProviderV1 = {
|
|
|
77
89
|
readonly targetPlanner: D1LinkedDeviceTargetPlannerV1;
|
|
78
90
|
};
|
|
79
91
|
export declare function createD1LinkedDeviceOwnerAuthorizationProviderV1(options: D1LinkedDeviceOwnerAuthorizationProviderOptionsV1): D1LinkedDeviceOwnerAuthorizationProviderV1;
|
|
92
|
+
export {};
|
|
80
93
|
//# sourceMappingURL=d1LinkedDeviceOwnerAuthorizationProvider.d.ts.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { LinkedDeviceRevokeRequestV1, LinkedDeviceRevokeResultV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
2
|
+
import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
3
|
+
import type { WalletAuthMethodId, WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
4
|
+
import type { LinkedDeviceManagementServiceV1, LinkedDeviceManagementSourceV1 } from '../../../../core/deviceLinking/linkedDeviceManagement';
|
|
5
|
+
import type { D1WalletAuthMethodStore } from '../../../../core/d1WalletAuthMethodStore';
|
|
6
|
+
import type { DeviceLinkingAuthDeniedV1 } from '../../../transport/fetch/routes/deviceLinking';
|
|
7
|
+
import type { D1LinkedDeviceFreshRevokeProofV1, verifyD1LinkedDeviceFreshRevokeProofV1 } from '../wallet/d1WalletAuthMethodBoundary';
|
|
8
|
+
import type { D1WalletAuthorityStore } from '../wallet/d1WalletAuthorityStore';
|
|
9
|
+
import { type D1WalletAuthMethodRevocationReplayStoreV1 } from '../wallet/d1WalletAuthMethodRevocationReplayStore';
|
|
10
|
+
/** Verifies a fresh proof without spending it; an Email OTP spend rides in the result. */
|
|
11
|
+
type FreshRevokeProofVerifierV1 = (input: {
|
|
12
|
+
readonly walletId: WalletId;
|
|
13
|
+
readonly targetWalletAuthMethodId: WalletAuthMethodId;
|
|
14
|
+
readonly proof: D1LinkedDeviceFreshRevokeProofV1;
|
|
15
|
+
readonly expectedOrigin: string;
|
|
16
|
+
readonly verifiedAtMs: number;
|
|
17
|
+
readonly operationFingerprintDigest: DigestB64u;
|
|
18
|
+
}) => ReturnType<typeof verifyD1LinkedDeviceFreshRevokeProofV1>;
|
|
19
|
+
type D1LinkedDeviceRevocationOutcomeV1 = {
|
|
20
|
+
readonly kind: 'answered';
|
|
21
|
+
readonly result: LinkedDeviceRevokeResultV1;
|
|
22
|
+
} | DeviceLinkingAuthDeniedV1;
|
|
23
|
+
/**
|
|
24
|
+
* Revokes one linked device on a fresh proof from another active full-owner
|
|
25
|
+
* method, as an auth-method revocation does: the proof is spent, the method
|
|
26
|
+
* revoked and the answer recorded in one batch.
|
|
27
|
+
*
|
|
28
|
+
* The record binds the answer to the operation fingerprint and to a digest
|
|
29
|
+
* of the proof, never the proof or its code. An exact retry is answered from
|
|
30
|
+
* the record before its proof is examined again, so a request whose answer
|
|
31
|
+
* was lost receives what committed although its code is spent. An Email OTP
|
|
32
|
+
* code is verified without being spent, and spent only in that batch, so a
|
|
33
|
+
* batch that does not commit leaves it usable for the same request.
|
|
34
|
+
*/
|
|
35
|
+
export declare function createD1LinkedDeviceRevocationV1(deps: {
|
|
36
|
+
readonly management: Pick<LinkedDeviceManagementServiceV1, 'revokeLinkedDeviceV1' | 'finishLinkedDeviceRevocationV1'>;
|
|
37
|
+
readonly replays: D1WalletAuthMethodRevocationReplayStoreV1;
|
|
38
|
+
readonly verifyProofForBatch: FreshRevokeProofVerifierV1;
|
|
39
|
+
readonly authMethodStore: Pick<D1WalletAuthMethodStore, 'readByIdV2' | 'prepareActiveV2SourceGuardStatements'>;
|
|
40
|
+
readonly authorityStore: Pick<D1WalletAuthorityStore, 'readById'>;
|
|
41
|
+
readonly nowV1: () => number;
|
|
42
|
+
}): (input: {
|
|
43
|
+
readonly request: LinkedDeviceRevokeRequestV1;
|
|
44
|
+
readonly owner: LinkedDeviceManagementSourceV1;
|
|
45
|
+
readonly proof: D1LinkedDeviceFreshRevokeProofV1;
|
|
46
|
+
readonly expectedOrigin: string;
|
|
47
|
+
}) => Promise<D1LinkedDeviceRevocationOutcomeV1>;
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=d1LinkedDeviceRevocation.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
1
|
+
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
2
2
|
import { type DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
3
3
|
export type D1LinkedDeviceSessionRowV1 = {
|
|
4
4
|
readonly link_session_id?: unknown;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
2
2
|
import type { LinkedDeviceApprovalV1, LinkedDeviceSessionClaimV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
3
|
-
import {
|
|
3
|
+
import type { LinkedDeviceSessionListCursorV1, LinkedDeviceSessionListPageV1, LinkedDeviceSessionStoreV1 } from '../../../../core/deviceLinking/linkedDeviceSession';
|
|
4
|
+
import { type LinkedDeviceSessionMutationResultV1, type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
4
5
|
import { type LinkDeviceSessionId } from '../../../../../../shared-ts/src/signing-lanes/ids';
|
|
5
6
|
import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
6
7
|
import type { WalletAuthorityId, WalletId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
@@ -15,10 +16,11 @@ export type D1LinkedDeviceSessionStoreOptionsV1 = {
|
|
|
15
16
|
readonly scope: D1LinkedDeviceSessionScopeV1;
|
|
16
17
|
readonly now?: () => number;
|
|
17
18
|
};
|
|
19
|
+
/** Aborts the batch it is in when the statement just before it changed no row. */
|
|
20
|
+
export declare const SESSION_CAS_GUARD_SQL = "INSERT INTO linked_device_session_cas_guard (guard_id)\nSELECT 1\n WHERE changes() = 0";
|
|
18
21
|
export declare class D1LinkedDeviceSessionStoreV1 implements LinkedDeviceSessionStoreV1 {
|
|
19
22
|
private readonly database;
|
|
20
23
|
private readonly scope;
|
|
21
|
-
private readonly now;
|
|
22
24
|
constructor(options: D1LinkedDeviceSessionStoreOptionsV1);
|
|
23
25
|
createUnclaimedSessionV1(record: LinkedDeviceSessionRecordV1): Promise<LinkedDeviceSessionMutationResultV1>;
|
|
24
26
|
getSessionV1(linkSessionId: LinkDeviceSessionId): Promise<LinkedDeviceSessionRecordV1 | null>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { LinkedDeviceApprovalV1, LinkedDeviceOrdinaryMaterialSourceContributionPreparationTupleV1, LinkedDeviceTargetCredentialRegistrationV1, LinkedDeviceTargetPreparationV1, VerifiedTargetFactorV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
2
|
-
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
2
|
+
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
3
3
|
import type { LinkedDeviceOwnerSourceChildResolverV1 } from './d1LinkedDeviceTargetPlanner';
|
|
4
4
|
import type { LinkedDeviceSourceContributionPreparationPlannerV1, VerifiedLinkedDeviceTargetFactorEvidenceV1 } from './d1LinkedDeviceTargetCredentialProvider';
|
|
5
5
|
import type { VerifiedLinkSourceReadV1 } from './d1LinkedDeviceVerifiedLinkBuilder';
|
|
@@ -2,9 +2,9 @@ import type { LinkedDeviceApprovalV1, LinkedDevicePasskeyTargetConfigurationFiel
|
|
|
2
2
|
import { type DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
3
3
|
import { type WalletAuthMethodId, type WebAuthnCredentialIdB64u } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
4
4
|
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
5
|
-
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
5
|
+
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
6
6
|
import type { DeviceLinkingTargetCredentialProviderV1, LinkedDeviceTargetPreparationResultV1 } from '../../../../router/transport/fetch/routes/deviceLinking';
|
|
7
|
-
import type
|
|
7
|
+
import { type D1LinkedDeviceSessionScopeV1 } from './d1LinkedDeviceSessionStore';
|
|
8
8
|
import { type VerifiedLinkSourceReadV1, type VerifiedLinkSourceReaderV1 } from './d1LinkedDeviceVerifiedLinkBuilder';
|
|
9
9
|
export type VerifiedLinkedDeviceWebAuthnCredentialV1 = {
|
|
10
10
|
readonly credentialIdB64u: string;
|
|
@@ -1,15 +1,15 @@
|
|
|
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
|
-
import type { WebAuthnRpId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
3
|
+
import type { MpcMaterialActivationRef, WebAuthnRpId } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
4
4
|
import type { ActiveLaneProtocolSourceV1, EcdsaTargetCapabilityBindingV1, LaneTargetSigningWorkerV1 } from '../../../../../../shared-ts/src/signing-lanes/rotation';
|
|
5
5
|
import type { LaneHolderParticipantId } from '../../../../../../shared-ts/src/signing-lanes/participants';
|
|
6
6
|
import type { EvmFamilySigningKeySlotId } from '../../../../../../shared-ts/src/signing-lanes/evmFamilySigningKeySlotId';
|
|
7
7
|
import type { KeyCreationSignerSlot } from '../../../../../../shared-ts/src/passkey-custody/primitives';
|
|
8
8
|
import type { Ed25519PublicKeyB64u } from '../../../../../../shared-ts/src/passkey-custody/primitives';
|
|
9
|
-
import type { RouterAbEd25519YaoActivationBindingV1, RouterAbEd25519YaoApplicationBindingFactsV1 } from '../../../../../../shared-ts/src/utils/routerAbEd25519Yao';
|
|
10
|
-
import type { NearEd25519SigningKeyId } from '../../../../../../shared-ts/src/utils/
|
|
9
|
+
import type { RouterAbEd25519YaoActivationBindingV1, RouterAbEd25519YaoApplicationBindingFactsV1, RouterAbEd25519YaoCeremonyBindingV1 } from '../../../../../../shared-ts/src/utils/routerAbEd25519Yao';
|
|
10
|
+
import type { NearEd25519SigningKeyId } from '../../../../../../shared-ts/src/utils/registrationIds';
|
|
11
11
|
import type { WalletKeyId } from '../../../../../../shared-ts/src/signing-lanes/ids';
|
|
12
|
-
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
12
|
+
import type { LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
13
13
|
import type { ExactAdministeredSignerV1 } from '../../../../../../shared-ts/src/device-linking/delegatedActivationPlan';
|
|
14
14
|
import type { LinkedDeviceTargetPlannerV1 } from './d1LinkedDeviceTargetCredentialProvider';
|
|
15
15
|
type LinkedDeviceOwnerSourceChildResolutionBaseV1 = {
|
|
@@ -28,6 +28,8 @@ type LinkedDeviceOwnerEd25519SourceChildResolutionV1 = LinkedDeviceOwnerSourceCh
|
|
|
28
28
|
readonly stableContextBindingB64u: string;
|
|
29
29
|
readonly sourceBinding: RouterAbEd25519YaoActivationBindingV1<'registration'>;
|
|
30
30
|
readonly applicationBinding: RouterAbEd25519YaoApplicationBindingFactsV1;
|
|
31
|
+
/** A linked device's own registration binding, when that device is the source. */
|
|
32
|
+
readonly linkedSourceBinding?: RouterAbEd25519YaoCeremonyBindingV1;
|
|
31
33
|
};
|
|
32
34
|
type LinkedDeviceOwnerEcdsaSourceChildResolutionV1 = LinkedDeviceOwnerSourceChildResolutionBaseV1 & {
|
|
33
35
|
readonly keyFamily: 'ecdsa_secp256k1';
|
|
@@ -38,6 +40,8 @@ type LinkedDeviceOwnerEcdsaSourceChildResolutionV1 = LinkedDeviceOwnerSourceChil
|
|
|
38
40
|
readonly sourceServerVerifyingShare33B64u: string;
|
|
39
41
|
readonly applicationBindingDigestB64u: DigestB64u;
|
|
40
42
|
readonly clientShareRetryCounter: number;
|
|
43
|
+
/** A linked device's own material, when that device is the source. */
|
|
44
|
+
readonly linkedSourceMaterialActivation?: MpcMaterialActivationRef;
|
|
41
45
|
};
|
|
42
46
|
export type LinkedDeviceOwnerSourceChildResolutionV1 = LinkedDeviceOwnerEd25519SourceChildResolutionV1 | LinkedDeviceOwnerEcdsaSourceChildResolutionV1;
|
|
43
47
|
export type LinkedDeviceTargetEnrichedChildResolutionV1 = (LinkedDeviceOwnerEd25519SourceChildResolutionV1 & {
|
|
@@ -2,15 +2,13 @@ import { type ExactAdministeredSignerManifestV1 } from '../../../../../../shared
|
|
|
2
2
|
import type { LinkedDeviceApprovalV1, LinkedDeviceTargetCredentialRegistrationV1, LinkedDeviceTargetPreparationV1, VerifiedLinkInputV1, VerifiedTargetFactorV1 } from '../../../../../../shared-ts/src/device-linking/contracts';
|
|
3
3
|
import type { ActiveWalletAuthorityV1 } from '../../../../../../shared-ts/src/authorization/walletAuthority';
|
|
4
4
|
import type { DigestB64u } from '../../../../../../shared-ts/src/utils/canonicalPrimitives';
|
|
5
|
-
import type {
|
|
5
|
+
import type { ActiveWalletAuthMethodRecordV2 } from '../../../../../../shared-ts/src/utils/walletAuthMethodRecord';
|
|
6
6
|
import type { PrincipalId } from '../../../../../../shared-ts/src/authorization/capabilityKinds';
|
|
7
|
-
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/
|
|
7
|
+
import { type LinkedDeviceSessionRecordV1 } from '../../../../core/deviceLinking/linkedDeviceSessionRecord';
|
|
8
8
|
import type { VerifiedLinkedDeviceTargetFactorEvidenceV1 } from './d1LinkedDeviceTargetCredentialProvider';
|
|
9
9
|
export type VerifiedLinkSourceReadV1 = {
|
|
10
10
|
readonly authority: ActiveWalletAuthorityV1;
|
|
11
|
-
readonly authMethod:
|
|
12
|
-
readonly status: 'active';
|
|
13
|
-
}>;
|
|
11
|
+
readonly authMethod: ActiveWalletAuthMethodRecordV2;
|
|
14
12
|
readonly signerManifest: ExactAdministeredSignerManifestV1;
|
|
15
13
|
/** The custody manifest recorded on the requested source signer. */
|
|
16
14
|
readonly keyManifestDigestB64u: DigestB64u;
|
package/dist/types/wallet-server/src/router/cloudflare/d1/deviceLinking/installedEcdsaAuthority.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type MpcMaterialActivationRef } from '../../../../../../shared-ts/src/utils/domainIds';
|
|
2
|
+
import type { InstalledLinkedDeviceEcdsaAuthorityProjectionV1, StoredInstallationRow } from './d1LinkedDeviceAuthorityInstallService';
|
|
3
|
+
export declare function findInstalledEcdsaAuthority(rows: readonly StoredInstallationRow[], materialActivation: MpcMaterialActivationRef): InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null;
|
|
4
|
+
/** Every hop observes the same verified installation set from one database read. */
|
|
5
|
+
export declare function installedEcdsaAuthorityChain(rows: readonly StoredInstallationRow[], materialActivation: MpcMaterialActivationRef): readonly InstalledLinkedDeviceEcdsaAuthorityProjectionV1[];
|
|
6
|
+
export declare function projectInstalledEcdsaAuthority(stored: StoredInstallationRow): InstalledLinkedDeviceEcdsaAuthorityProjectionV1 | null;
|
|
7
|
+
//# sourceMappingURL=installedEcdsaAuthority.d.ts.map
|
|
@@ -18,7 +18,7 @@ export declare class CloudflareD1RouterAbEd25519YaoCapabilityPersistence impleme
|
|
|
18
18
|
private readonly now;
|
|
19
19
|
private schemaReady;
|
|
20
20
|
constructor(options: CloudflareD1RouterAbEd25519YaoCapabilityPersistenceOptions);
|
|
21
|
-
|
|
21
|
+
prepareActiveCapabilityReplacement(input: {
|
|
22
22
|
readonly operation: RouterAbEd25519YaoCapabilityReplacementOperationV1;
|
|
23
23
|
readonly previous: WalletEd25519YaoActiveCapabilityRecord;
|
|
24
24
|
readonly next: WalletEd25519YaoActiveCapabilityRecord;
|
|
@@ -28,6 +28,5 @@ export declare class CloudflareD1RouterAbEd25519YaoCapabilityPersistence impleme
|
|
|
28
28
|
private prepareAuthorityReplacementStatement;
|
|
29
29
|
private prepareSessionAuthorityProjectionReplacementStatement;
|
|
30
30
|
private readReceipt;
|
|
31
|
-
private reconcileAfterUncertainWrite;
|
|
32
31
|
}
|
|
33
32
|
//# sourceMappingURL=d1Ed25519YaoCapabilityPersistence.d.ts.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { D1DatabaseLike, D1PreparedStatementLike } from '../../../../storage/tenantRoute';
|
|
2
|
+
import type { RouterAbEd25519YaoLifecycleDecisionV1 } from '../../../domains/ed25519Yao/capabilityLifecycle/routerAbEd25519YaoLifecycleDecision';
|
|
3
|
+
/**
|
|
4
|
+
* The Gateway's Ed25519 Yao lifecycle decisions, in the signer database. A
|
|
5
|
+
* decision is inserted once, in the batch that makes its finalization
|
|
6
|
+
* visible, and never changes.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CloudflareD1Ed25519YaoLifecycleDecisionStoreV1 {
|
|
9
|
+
private readonly database;
|
|
10
|
+
private readonly scope;
|
|
11
|
+
constructor(input: {
|
|
12
|
+
readonly database: D1DatabaseLike;
|
|
13
|
+
readonly namespace: string;
|
|
14
|
+
readonly orgId: string;
|
|
15
|
+
readonly projectId: string;
|
|
16
|
+
readonly envId: string;
|
|
17
|
+
});
|
|
18
|
+
read(lifecycleId: string): Promise<RouterAbEd25519YaoLifecycleDecisionV1 | null>;
|
|
19
|
+
/**
|
|
20
|
+
* The statements that record `decision`, for a batch whose other statements
|
|
21
|
+
* make its finalization visible. The batch aborts unless they insert the
|
|
22
|
+
* decision: a lifecycle already decided, even the same way, commits nothing
|
|
23
|
+
* more.
|
|
24
|
+
*/
|
|
25
|
+
prepareDecideStatements(decision: RouterAbEd25519YaoLifecycleDecisionV1, decidedAtMs: number): readonly D1PreparedStatementLike[];
|
|
26
|
+
/**
|
|
27
|
+
* Commits `decision` and the statements that make its finalization visible
|
|
28
|
+
* in one batch. A guard among `visibility`, or a decision already recorded,
|
|
29
|
+
* aborts it and nothing commits: the caller reads what holds instead.
|
|
30
|
+
*/
|
|
31
|
+
decide(decision: RouterAbEd25519YaoLifecycleDecisionV1, visibility: readonly D1PreparedStatementLike[], decidedAtMs: number): Promise<void>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=d1Ed25519YaoLifecycleDecisionStore.d.ts.map
|