@seams/wallet 0.28.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/README.md +29 -4
  2. package/dist/.build-inputs.sha256 +1 -1
  3. package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +11 -0
  4. package/dist/esm/SeamsWeb/publicApi/near.js +3 -0
  5. package/dist/esm/SeamsWeb/publicApi/ownerNearOperation.js +175 -0
  6. package/dist/esm/SeamsWeb/walletIframe/client/nearCommands.js +4 -0
  7. package/dist/esm/SeamsWeb/walletIframe/client/ownerNearOperation.js +67 -0
  8. package/dist/esm/SeamsWeb/walletIframe/client/progress/on-events-progress-bus.js +27 -17
  9. package/dist/esm/SeamsWeb/walletIframe/client/router.js +30 -7
  10. package/dist/esm/SeamsWeb/walletIframe/client/sessionCommands.js +4 -0
  11. package/dist/esm/SeamsWeb/walletIframe/host/walletMutationGuard.js +5 -0
  12. package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +15 -1
  13. package/dist/esm/SeamsWeb/walletIframe/shared/messages.js +1 -1
  14. package/dist/esm/SeamsWeb/walletIframe/shared/ownerNearOperation.js +152 -0
  15. package/dist/esm/core/accountData/near/accountProjection.js +1 -1
  16. package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +4 -3
  17. package/dist/esm/core/rpcClients/relayer/walletRegistration.js +1 -1
  18. package/dist/esm/core/signingEngine/flows/registration/accountLifecycle.js +1 -1
  19. package/dist/esm/core/signingEngine/flows/shared/signingConfirmation.js +1 -1
  20. package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +1 -1
  21. package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlow.js +1 -1
  22. package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +2 -2
  23. package/dist/esm/core/signingEngine/flows/signNear/signDelegate.js +2 -2
  24. package/dist/esm/core/signingEngine/flows/signNear/signNear.js +3 -8
  25. package/dist/esm/core/signingEngine/flows/signNear/signNep413.js +1 -1
  26. package/dist/esm/core/signingEngine/flows/signNear/signTransactions.js +3 -4
  27. package/dist/esm/core/signingEngine/session/identity/exactSigningLaneIdentity.js +1 -1
  28. package/dist/esm/index.js +3 -2
  29. package/dist/esm/react/boundWallet.js +24 -0
  30. package/dist/esm/react/context/useLoginStateRefresher.js +1 -0
  31. package/dist/esm/react/hooks/useAccountInput.js +1 -1
  32. package/dist/esm/react/hooks/useOwnerNearOperation.js +10 -0
  33. package/dist/esm/react/index.js +3 -2
  34. package/dist/esm/sdk/{ConfirmationDrawer-MJoE0AAo.js → ConfirmationDrawer-BRnd5SEf.js} +1 -1
  35. package/dist/esm/sdk/NonceCoordinator-CNXYrOoy.js +1 -0
  36. package/dist/{public/sdk/SeamsWordmark-DwvPx2UA.js → esm/sdk/SeamsWordmark-CeEi2RlU.js} +1 -1
  37. package/dist/esm/sdk/accountLifecycle-B5a9SCM7.js +1 -0
  38. package/dist/esm/sdk/{adapters-C-g_hkkZ.js → adapters-B2k8y0MB.js} +1 -1
  39. package/dist/{public/sdk/appearance-token-vars-01eH9pgA.js → esm/sdk/appearance-token-vars-DkF3EBbF.js} +1 -1
  40. package/dist/esm/sdk/authorization-gVWwKwav.js +1 -0
  41. package/dist/esm/sdk/clientSessionPersistenceState-BxpITYM_.js +1 -0
  42. package/dist/esm/sdk/{collectAuthenticationCredentialForChallengeB64u-I4wq8OGq.js → collectAuthenticationCredentialForChallengeB64u-BoFVpdRS.js} +1 -1
  43. package/dist/esm/sdk/{commitQueue-CYruPlkm.js → commitQueue-C1wkey4q.js} +1 -1
  44. package/dist/esm/sdk/confirm-ui-Dx6c4-Rk.js +2 -0
  45. package/dist/{public/sdk/device-linking-DiCNt3iA.js → esm/sdk/device-linking-_o3_fgiG.js} +1 -1
  46. package/dist/esm/sdk/{deviceLinkApproval-x3WkiYrd.js → deviceLinkApproval-CObsEWBa.js} +1 -1
  47. package/dist/esm/sdk/{display-D0EPmU4w.js → display-CUWg48tD.js} +1 -1
  48. package/dist/{public/sdk/ecdsaCapabilityManifest-DAJEVjlP.js → esm/sdk/ecdsaCapabilityManifest--1Ztngfx.js} +1 -1
  49. package/dist/{public/sdk/ecdsaDerivationClientWasm-AYOJgTJm.js → esm/sdk/ecdsaDerivationClientWasm-DJh2uN-q.js} +1 -1
  50. package/dist/esm/sdk/ecdsaDerivationExport-BUUUGc6o.js +1 -0
  51. package/dist/esm/sdk/{ecdsaWalletRecords-WLyq414E.js → ecdsaWalletRecords-CKaXfsVu.js} +1 -1
  52. package/dist/esm/sdk/ed25519OperationFingerprint-Dev4P6Og.js +1 -0
  53. package/dist/{public/sdk/emailOtpEcdsaDerivationIdentity-HFQXc1Yw.js → esm/sdk/emailOtpEcdsaDerivationIdentity-Qd4pBwHv.js} +1 -1
  54. package/dist/esm/sdk/{enrichDisplayModelWithAbi-O6Mw4i2E.js → enrichDisplayModelWithAbi-JeAcpa7r.js} +1 -1
  55. package/dist/esm/sdk/{evmCryptoWasm-BUPb4hBH.js → evmCryptoWasm-CeH6Qeaa.js} +1 -1
  56. package/dist/esm/sdk/{export-viewer-host-BSTfHhau.js → export-viewer-host-O0OV1Oou.js} +1 -1
  57. package/dist/esm/sdk/exportKeypairOperation-DkqY9Bpf.js +1 -0
  58. package/dist/esm/sdk/host-BeE2dIU4.js +1 -0
  59. package/dist/{public/sdk/icons-BlMXolHv.js → esm/sdk/icons-pSZJ5Xrm.js} +1 -1
  60. package/dist/esm/sdk/indexedDB-CA4tGqkr.js +1 -0
  61. package/dist/esm/sdk/{intentDigest-HvRsBQ1z.js → intentDigest-gM3r4SVX.js} +1 -1
  62. package/dist/esm/sdk/{lanes-BU-fGqY4.js → lanes-vBKm6yBJ.js} +1 -1
  63. package/dist/esm/sdk/{localOnly-Xs89Xajm.js → localOnly-U_MucUAe.js} +1 -1
  64. package/dist/{public/sdk/mountExportPrivateKeySurface-CsUEKeum.js → esm/sdk/mountExportPrivateKeySurface-C2-fnvP6.js} +1 -1
  65. package/dist/{public/sdk/mountRecoveryCodeBackupSurface-kFLo5zLk.js → esm/sdk/mountRecoveryCodeBackupSurface-C_tJNPJX.js} +1 -1
  66. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-CnbgQfZc.js +1 -0
  67. package/dist/esm/sdk/{nonceLaneKeys-BF_UpvIy.js → nonceLaneKeys-DtBpxubF.js} +1 -1
  68. package/dist/esm/sdk/{normalization-Df9fZWJC.js → normalization-DmfGvZ_3.js} +1 -1
  69. package/dist/esm/sdk/ownerNearOperation-DjNDxW3_.js +1 -0
  70. package/dist/{public/sdk/pendingWalletRecoveryCodeBackup-B-R_U34I.js → esm/sdk/pendingWalletRecoveryCodeBackup-DXFrQmO5.js} +1 -1
  71. package/dist/esm/sdk/{presignaturePool-BbvqRWYw.js → presignaturePool-Dq4RhzXn.js} +1 -1
  72. package/dist/{public/sdk/recovery-entrypoint-DJbMDC_m.js → esm/sdk/recovery-entrypoint-s9OoKBcl.js} +1 -1
  73. package/dist/esm/sdk/registration-CTtTocyo.js +1 -0
  74. package/dist/esm/sdk/{registration-C2fb9kRQ.js → registration-D3p7muCc.js} +1 -1
  75. package/dist/esm/sdk/{registrationAccounts-4r74gX1l.js → registrationAccounts-Bso0ntMs.js} +1 -1
  76. package/dist/esm/sdk/{registrationIntent-Do1tD1V7.js → registrationIntent-C1-Kyx_-.js} +1 -1
  77. package/dist/{public/sdk/registrationSignerPlan-DK2b3N_p.js → esm/sdk/registrationSignerPlan-CeMidFme.js} +1 -1
  78. package/dist/{public/sdk/requireStepUpAuth-COqCGb1i.js → esm/sdk/requireStepUpAuth-iVo6h_U-.js} +1 -1
  79. package/dist/esm/sdk/resealedEnvelopeResult-DXDo-72P.js +1 -0
  80. package/dist/{public/sdk/routerAbNormalSigning-D-UZmCBS.js → esm/sdk/routerAbNormalSigning-DVFFkNhJ.js} +1 -1
  81. package/dist/esm/sdk/runtime-auth-Dsmw_dUA.js +1 -0
  82. package/dist/esm/sdk/runtime-device-link-qmYvGep9.js +1 -0
  83. package/dist/esm/sdk/runtime-ecdsa-tempo-Zh95TuLV.js +1 -0
  84. package/dist/esm/sdk/runtime-email-otp-CnLuW4H1.js +1 -0
  85. package/dist/esm/sdk/runtime-export-m8lvrXtw.js +1 -0
  86. package/dist/esm/sdk/runtime-near-BiXzXXhH.js +1 -0
  87. package/dist/esm/sdk/runtime-preferences-DlKHDIjb.js +1 -0
  88. package/dist/esm/sdk/runtime-recovery-C6lS71Jp.js +1 -0
  89. package/dist/esm/sdk/{runtime-recovery-codes-si1fGktB.js → runtime-recovery-codes-B033ake_.js} +1 -1
  90. package/dist/esm/sdk/runtimeContext-RNS2E5wy.js +7 -0
  91. package/dist/{public/sdk/secp256k1-CE7-q9Sn.js → esm/sdk/secp256k1-DPeaOjM0.js} +1 -1
  92. package/dist/esm/sdk/signEvmFamily-Cksw3RpU.js +1 -0
  93. package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-CrMIAXUe.js → signEvmFamilyWithUiConfirmForTempo-B7p9UVix.js} +1 -1
  94. package/dist/esm/sdk/{signEvmWithUiConfirm-CGrLtMV6.js → signEvmWithUiConfirm-B14zYdwE.js} +1 -1
  95. package/dist/esm/sdk/signNear-D0rFEYP1.js +1 -0
  96. package/dist/esm/sdk/{signatureUses-kSrUHSSH.js → signatureUses-BLOoPRsb.js} +1 -1
  97. package/dist/{public/sdk/signingFlow-BcetvUeS.js → esm/sdk/signingFlow-Bd1X0e-1.js} +2 -2
  98. package/dist/{public/sdk/signingQueue-dMFOFOP5.js → esm/sdk/signingQueue-DoUBeaCv.js} +1 -1
  99. package/dist/esm/sdk/{thresholdEcdsa-CqR1fFA-.js → thresholdEcdsa-BxfOZmiR.js} +1 -1
  100. package/dist/esm/sdk/{trace--mRP2OQc.js → trace-BnhLKxcu.js} +1 -1
  101. package/dist/esm/sdk/{transaction-activity-DCzHGg3b.js → transaction-activity-BXSxMp1E.js} +1 -1
  102. package/dist/{public/sdk/transactionState-29T9xfvL.js → esm/sdk/transactionState-G_FPe-U8.js} +1 -1
  103. package/dist/esm/sdk/{types-f7dyj5N6.js → types-A-w1cYlJ.js} +1 -1
  104. package/dist/esm/sdk/{unlockedEd25519ExportRootCapability-yzxQjIFd.js → unlockedEd25519ExportRootCapability-5F1egCSv.js} +1 -1
  105. package/dist/esm/sdk/voiceid-host.js +1 -1
  106. package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
  107. package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
  108. package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
  109. package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
  110. package/dist/esm/sdk/{wallet-recovery-BZB2Vu3X.js → wallet-recovery-DXdm68_Q.js} +1 -1
  111. package/dist/{public/sdk/walletAuthMethodRecord-DLBB5fez.js → esm/sdk/walletAuthMethodRecord-BW-XV4fv.js} +1 -1
  112. package/dist/{public/sdk/walletAuthority-BTGAuOi8.js → esm/sdk/walletAuthority-DbGaSw7D.js} +1 -1
  113. package/dist/esm/sdk/{walletCapabilityBindings-D5YYB7nN.js → walletCapabilityBindings-mPx-6_r-.js} +1 -1
  114. package/dist/{public/sdk/walletCustodyEcdsaContinuity-C31YQ9av.js → esm/sdk/walletCustodyEcdsaContinuity-BnyL1Ryu.js} +1 -1
  115. package/dist/{public/sdk/walletOwnershipGeneration-CgjCtPrV.js → esm/sdk/walletOwnershipGeneration-BZc6UKqX.js} +1 -1
  116. package/dist/esm/sdk/walletRecoveryAdminProof-DdwikrW3.js +1 -0
  117. package/dist/esm/sdk/walletRecoveryCommit-DbAoiJp5.js +1 -0
  118. package/dist/esm/sdk/{walletSessionAuthorizationStore-B9Vwkshr.js → walletSessionAuthorizationStore-BivTUoKY.js} +1 -1
  119. package/dist/esm/sdk/{webauthnP256-BsQQPurm.js → webauthnP256-BGHikiNl.js} +1 -1
  120. package/dist/esm/shared-ts/src/auth/externalAuth.js +2 -2
  121. package/dist/esm/shared-ts/src/utils/index.js +2 -2
  122. package/dist/esm/voiceid-host.js +1 -1
  123. package/dist/public/headers.manifest.json +1 -1
  124. package/dist/public/sdk/{ConfirmationDrawer-MJoE0AAo.js → ConfirmationDrawer-BRnd5SEf.js} +1 -1
  125. package/dist/public/sdk/NonceCoordinator-CNXYrOoy.js +1 -0
  126. package/dist/{esm/sdk/SeamsWordmark-DwvPx2UA.js → public/sdk/SeamsWordmark-CeEi2RlU.js} +1 -1
  127. package/dist/public/sdk/accountLifecycle-B5a9SCM7.js +1 -0
  128. package/dist/public/sdk/{adapters-C-g_hkkZ.js → adapters-B2k8y0MB.js} +1 -1
  129. package/dist/{esm/sdk/appearance-token-vars-01eH9pgA.js → public/sdk/appearance-token-vars-DkF3EBbF.js} +1 -1
  130. package/dist/public/sdk/authorization-gVWwKwav.js +1 -0
  131. package/dist/public/sdk/clientSessionPersistenceState-BxpITYM_.js +1 -0
  132. package/dist/public/sdk/{collectAuthenticationCredentialForChallengeB64u-I4wq8OGq.js → collectAuthenticationCredentialForChallengeB64u-BoFVpdRS.js} +1 -1
  133. package/dist/public/sdk/{commitQueue-CYruPlkm.js → commitQueue-C1wkey4q.js} +1 -1
  134. package/dist/public/sdk/confirm-ui-Dx6c4-Rk.js +2 -0
  135. package/dist/{esm/sdk/device-linking-DiCNt3iA.js → public/sdk/device-linking-_o3_fgiG.js} +1 -1
  136. package/dist/public/sdk/{deviceLinkApproval-x3WkiYrd.js → deviceLinkApproval-CObsEWBa.js} +1 -1
  137. package/dist/public/sdk/{display-D0EPmU4w.js → display-CUWg48tD.js} +1 -1
  138. package/dist/{esm/sdk/ecdsaCapabilityManifest-DAJEVjlP.js → public/sdk/ecdsaCapabilityManifest--1Ztngfx.js} +1 -1
  139. package/dist/{esm/sdk/ecdsaDerivationClientWasm-AYOJgTJm.js → public/sdk/ecdsaDerivationClientWasm-DJh2uN-q.js} +1 -1
  140. package/dist/public/sdk/ecdsaDerivationExport-BUUUGc6o.js +1 -0
  141. package/dist/public/sdk/{ecdsaWalletRecords-WLyq414E.js → ecdsaWalletRecords-CKaXfsVu.js} +1 -1
  142. package/dist/public/sdk/ed25519OperationFingerprint-Dev4P6Og.js +1 -0
  143. package/dist/{esm/sdk/emailOtpEcdsaDerivationIdentity-HFQXc1Yw.js → public/sdk/emailOtpEcdsaDerivationIdentity-Qd4pBwHv.js} +1 -1
  144. package/dist/public/sdk/{enrichDisplayModelWithAbi-O6Mw4i2E.js → enrichDisplayModelWithAbi-JeAcpa7r.js} +1 -1
  145. package/dist/public/sdk/{evmCryptoWasm-BUPb4hBH.js → evmCryptoWasm-CeH6Qeaa.js} +1 -1
  146. package/dist/public/sdk/{export-viewer-host-BSTfHhau.js → export-viewer-host-O0OV1Oou.js} +1 -1
  147. package/dist/public/sdk/exportKeypairOperation-DkqY9Bpf.js +1 -0
  148. package/dist/public/sdk/host-BeE2dIU4.js +1 -0
  149. package/dist/{esm/sdk/icons-BlMXolHv.js → public/sdk/icons-pSZJ5Xrm.js} +1 -1
  150. package/dist/public/sdk/indexedDB-CA4tGqkr.js +1 -0
  151. package/dist/public/sdk/{intentDigest-HvRsBQ1z.js → intentDigest-gM3r4SVX.js} +1 -1
  152. package/dist/public/sdk/{lanes-BU-fGqY4.js → lanes-vBKm6yBJ.js} +1 -1
  153. package/dist/public/sdk/{localOnly-Xs89Xajm.js → localOnly-U_MucUAe.js} +1 -1
  154. package/dist/{esm/sdk/mountExportPrivateKeySurface-CsUEKeum.js → public/sdk/mountExportPrivateKeySurface-C2-fnvP6.js} +1 -1
  155. package/dist/{esm/sdk/mountRecoveryCodeBackupSurface-kFLo5zLk.js → public/sdk/mountRecoveryCodeBackupSurface-C_tJNPJX.js} +1 -1
  156. package/dist/public/sdk/nearEd25519YaoSigningPreparation-CnbgQfZc.js +1 -0
  157. package/dist/public/sdk/{nonceLaneKeys-BF_UpvIy.js → nonceLaneKeys-DtBpxubF.js} +1 -1
  158. package/dist/public/sdk/{normalization-Df9fZWJC.js → normalization-DmfGvZ_3.js} +1 -1
  159. package/dist/public/sdk/ownerNearOperation-DjNDxW3_.js +1 -0
  160. package/dist/{esm/sdk/pendingWalletRecoveryCodeBackup-B-R_U34I.js → public/sdk/pendingWalletRecoveryCodeBackup-DXFrQmO5.js} +1 -1
  161. package/dist/public/sdk/{presignaturePool-BbvqRWYw.js → presignaturePool-Dq4RhzXn.js} +1 -1
  162. package/dist/{esm/sdk/recovery-entrypoint-DJbMDC_m.js → public/sdk/recovery-entrypoint-s9OoKBcl.js} +1 -1
  163. package/dist/public/sdk/registration-CTtTocyo.js +1 -0
  164. package/dist/public/sdk/{registration-C2fb9kRQ.js → registration-D3p7muCc.js} +1 -1
  165. package/dist/public/sdk/{registrationAccounts-4r74gX1l.js → registrationAccounts-Bso0ntMs.js} +1 -1
  166. package/dist/public/sdk/{registrationIntent-Do1tD1V7.js → registrationIntent-C1-Kyx_-.js} +1 -1
  167. package/dist/{esm/sdk/registrationSignerPlan-DK2b3N_p.js → public/sdk/registrationSignerPlan-CeMidFme.js} +1 -1
  168. package/dist/{esm/sdk/requireStepUpAuth-COqCGb1i.js → public/sdk/requireStepUpAuth-iVo6h_U-.js} +1 -1
  169. package/dist/public/sdk/resealedEnvelopeResult-DXDo-72P.js +1 -0
  170. package/dist/{esm/sdk/routerAbNormalSigning-D-UZmCBS.js → public/sdk/routerAbNormalSigning-DVFFkNhJ.js} +1 -1
  171. package/dist/public/sdk/runtime-auth-Dsmw_dUA.js +1 -0
  172. package/dist/public/sdk/runtime-device-link-qmYvGep9.js +1 -0
  173. package/dist/public/sdk/runtime-ecdsa-tempo-Zh95TuLV.js +1 -0
  174. package/dist/public/sdk/runtime-email-otp-CnLuW4H1.js +1 -0
  175. package/dist/public/sdk/runtime-export-m8lvrXtw.js +1 -0
  176. package/dist/public/sdk/runtime-near-BiXzXXhH.js +1 -0
  177. package/dist/public/sdk/runtime-preferences-DlKHDIjb.js +1 -0
  178. package/dist/public/sdk/runtime-recovery-C6lS71Jp.js +1 -0
  179. package/dist/public/sdk/{runtime-recovery-codes-si1fGktB.js → runtime-recovery-codes-B033ake_.js} +1 -1
  180. package/dist/public/sdk/runtimeContext-RNS2E5wy.js +7 -0
  181. package/dist/{esm/sdk/secp256k1-CE7-q9Sn.js → public/sdk/secp256k1-DPeaOjM0.js} +1 -1
  182. package/dist/public/sdk/signEvmFamily-Cksw3RpU.js +1 -0
  183. package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-CrMIAXUe.js → signEvmFamilyWithUiConfirmForTempo-B7p9UVix.js} +1 -1
  184. package/dist/public/sdk/{signEvmWithUiConfirm-CGrLtMV6.js → signEvmWithUiConfirm-B14zYdwE.js} +1 -1
  185. package/dist/public/sdk/signNear-D0rFEYP1.js +1 -0
  186. package/dist/public/sdk/{signatureUses-kSrUHSSH.js → signatureUses-BLOoPRsb.js} +1 -1
  187. package/dist/{esm/sdk/signingFlow-BcetvUeS.js → public/sdk/signingFlow-Bd1X0e-1.js} +2 -2
  188. package/dist/{esm/sdk/signingQueue-dMFOFOP5.js → public/sdk/signingQueue-DoUBeaCv.js} +1 -1
  189. package/dist/public/sdk/{thresholdEcdsa-CqR1fFA-.js → thresholdEcdsa-BxfOZmiR.js} +1 -1
  190. package/dist/public/sdk/{trace--mRP2OQc.js → trace-BnhLKxcu.js} +1 -1
  191. package/dist/public/sdk/{transaction-activity-DCzHGg3b.js → transaction-activity-BXSxMp1E.js} +1 -1
  192. package/dist/{esm/sdk/transactionState-29T9xfvL.js → public/sdk/transactionState-G_FPe-U8.js} +1 -1
  193. package/dist/public/sdk/{types-f7dyj5N6.js → types-A-w1cYlJ.js} +1 -1
  194. package/dist/public/sdk/{unlockedEd25519ExportRootCapability-yzxQjIFd.js → unlockedEd25519ExportRootCapability-5F1egCSv.js} +1 -1
  195. package/dist/public/sdk/voiceid-host.js +1 -1
  196. package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
  197. package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
  198. package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
  199. package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
  200. package/dist/public/sdk/{wallet-recovery-BZB2Vu3X.js → wallet-recovery-DXdm68_Q.js} +1 -1
  201. package/dist/{esm/sdk/walletAuthMethodRecord-DLBB5fez.js → public/sdk/walletAuthMethodRecord-BW-XV4fv.js} +1 -1
  202. package/dist/{esm/sdk/walletAuthority-BTGAuOi8.js → public/sdk/walletAuthority-DbGaSw7D.js} +1 -1
  203. package/dist/public/sdk/{walletCapabilityBindings-D5YYB7nN.js → walletCapabilityBindings-mPx-6_r-.js} +1 -1
  204. package/dist/{esm/sdk/walletCustodyEcdsaContinuity-C31YQ9av.js → public/sdk/walletCustodyEcdsaContinuity-BnyL1Ryu.js} +1 -1
  205. package/dist/{esm/sdk/walletOwnershipGeneration-CgjCtPrV.js → public/sdk/walletOwnershipGeneration-BZc6UKqX.js} +1 -1
  206. package/dist/public/sdk/walletRecoveryAdminProof-DdwikrW3.js +1 -0
  207. package/dist/public/sdk/walletRecoveryCommit-DbAoiJp5.js +1 -0
  208. package/dist/public/sdk/{walletSessionAuthorizationStore-B9Vwkshr.js → walletSessionAuthorizationStore-BivTUoKY.js} +1 -1
  209. package/dist/public/sdk/{webauthnP256-BsQQPurm.js → webauthnP256-BGHikiNl.js} +1 -1
  210. package/dist/public/wallet-assets.manifest.json +258 -258
  211. package/dist/public/wallet-service/index.html +4 -4
  212. package/dist/types/shared-ts/src/auth/externalAuth.d.ts +51 -8
  213. package/dist/types/shared-ts/src/authorization/index.d.ts +1 -1
  214. package/dist/types/shared-ts/src/authorization/walletOwnerOperation.d.ts +10 -0
  215. package/dist/types/shared-ts/src/utils/registrationEstablishedSession.d.ts +4 -0
  216. package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +2 -0
  217. package/dist/types/shared-ts/src/utils/walletManagementProtocol.d.ts +1 -1
  218. package/dist/types/wallet/src/SeamsWeb/operations/registration/pendingRegistrationRecovery.d.ts +1 -0
  219. package/dist/types/wallet/src/SeamsWeb/operations/registration/registration.d.ts +1 -0
  220. package/dist/types/wallet/src/SeamsWeb/operations/registration/registrationPasskeyMaterial.d.ts +24 -0
  221. package/dist/types/wallet/src/SeamsWeb/publicApi/auth.d.ts +1 -1
  222. package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +1 -0
  223. package/dist/types/wallet/src/SeamsWeb/publicApi/nearCommands.d.ts +2 -0
  224. package/dist/types/wallet/src/SeamsWeb/publicApi/ownerNearOperation.d.ts +58 -0
  225. package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +14 -6
  226. package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +57 -56
  227. package/dist/types/wallet/src/SeamsWeb/signingSurface/nearOwnerOperation.d.ts +16 -0
  228. package/dist/types/wallet/src/SeamsWeb/signingSurface/nearPasskeyOperationMaterial.d.ts +72 -0
  229. package/dist/types/wallet/src/SeamsWeb/signingSurface/types.d.ts +3 -0
  230. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/ownerNearOperation.d.ts +25 -0
  231. package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +4 -1
  232. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/WalletHostRuntime.d.ts +5 -1
  233. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createNearCommands.d.ts +2 -1
  234. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createSessionCommands.d.ts +6 -2
  235. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/externalAuth.d.ts +10 -8
  236. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/externalOwnerApproval.d.ts +24 -0
  237. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ownerNearOperation.d.ts +12 -0
  238. package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestRouter.d.ts +2 -2
  239. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/exactSessionState.d.ts +8 -0
  240. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +17 -7
  241. package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/ownerNearOperation.d.ts +51 -0
  242. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/registrationSetup.d.ts +1 -0
  243. package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/repositories.d.ts +4 -0
  244. package/dist/types/wallet/src/core/rpcClients/near/NearClient.d.ts +4 -0
  245. package/dist/types/wallet/src/core/rpcClients/relayer/walletRecoveryRotate.d.ts +2 -2
  246. package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +1 -0
  247. package/dist/types/wallet/src/core/signingEngine/session/passkey/ed25519YaoLocalMaterial.d.ts +21 -0
  248. package/dist/types/wallet/src/core/types/seams.d.ts +7 -0
  249. package/dist/types/wallet/src/index.d.ts +2 -0
  250. package/dist/types/wallet/src/react/boundWallet.d.ts +21 -1
  251. package/dist/types/wallet/src/react/hooks/useOwnerNearOperation.d.ts +4 -0
  252. package/dist/types/wallet/src/react/index.d.ts +3 -0
  253. package/package.json +1 -1
  254. package/dist/esm/sdk/NonceCoordinator-3YhmDTS5.js +0 -1
  255. package/dist/esm/sdk/accountLifecycle-6DHYWf0v.js +0 -1
  256. package/dist/esm/sdk/clientSessionPersistenceState-BCkJAYSz.js +0 -1
  257. package/dist/esm/sdk/confirm-ui-em0vkd2m.js +0 -2
  258. package/dist/esm/sdk/ecdsaDerivationExport-DJKOzDbS.js +0 -1
  259. package/dist/esm/sdk/exportKeypairOperation-CjST_NUK.js +0 -1
  260. package/dist/esm/sdk/host-C51z-AxP.js +0 -1
  261. package/dist/esm/sdk/indexedDB-C4SDsyOG.js +0 -1
  262. package/dist/esm/sdk/nearEd25519YaoMaterialActivation-BfXmy3Jr.js +0 -1
  263. package/dist/esm/sdk/nearEd25519YaoSigningPreparation-DHNk0F8e.js +0 -1
  264. package/dist/esm/sdk/registration-Byl4l4yZ.js +0 -1
  265. package/dist/esm/sdk/resealedEnvelopeResult-CLW00Vbw.js +0 -1
  266. package/dist/esm/sdk/runtime-auth-ufbVur2p.js +0 -1
  267. package/dist/esm/sdk/runtime-device-link-CagI2Q62.js +0 -1
  268. package/dist/esm/sdk/runtime-ecdsa-tempo-Rctxr0yM.js +0 -1
  269. package/dist/esm/sdk/runtime-email-otp-BQtcG-LF.js +0 -1
  270. package/dist/esm/sdk/runtime-export-wTeEaqlk.js +0 -1
  271. package/dist/esm/sdk/runtime-near-59yU_3ud.js +0 -1
  272. package/dist/esm/sdk/runtime-preferences-B9qLHX8W.js +0 -1
  273. package/dist/esm/sdk/runtime-recovery-DNyzdMBj.js +0 -1
  274. package/dist/esm/sdk/runtimeContext-ByeM6Z4Z.js +0 -6
  275. package/dist/esm/sdk/sessionObservationRevision-ihBwjS3y.js +0 -1
  276. package/dist/esm/sdk/signEvmFamily-BY5jlZEG.js +0 -1
  277. package/dist/esm/sdk/signNear-DMpJFkwF.js +0 -1
  278. package/dist/esm/sdk/signer-worker-BNodGJKY.js +0 -1
  279. package/dist/esm/sdk/walletRecoveryAdminProof-B4Ic07jY.js +0 -1
  280. package/dist/esm/sdk/walletRecoveryCommit-Cc2LAkCS.js +0 -1
  281. package/dist/public/sdk/NonceCoordinator-3YhmDTS5.js +0 -1
  282. package/dist/public/sdk/accountLifecycle-6DHYWf0v.js +0 -1
  283. package/dist/public/sdk/clientSessionPersistenceState-BCkJAYSz.js +0 -1
  284. package/dist/public/sdk/confirm-ui-em0vkd2m.js +0 -2
  285. package/dist/public/sdk/ecdsaDerivationExport-DJKOzDbS.js +0 -1
  286. package/dist/public/sdk/exportKeypairOperation-CjST_NUK.js +0 -1
  287. package/dist/public/sdk/host-C51z-AxP.js +0 -1
  288. package/dist/public/sdk/indexedDB-C4SDsyOG.js +0 -1
  289. package/dist/public/sdk/nearEd25519YaoMaterialActivation-BfXmy3Jr.js +0 -1
  290. package/dist/public/sdk/nearEd25519YaoSigningPreparation-DHNk0F8e.js +0 -1
  291. package/dist/public/sdk/registration-Byl4l4yZ.js +0 -1
  292. package/dist/public/sdk/resealedEnvelopeResult-CLW00Vbw.js +0 -1
  293. package/dist/public/sdk/runtime-auth-ufbVur2p.js +0 -1
  294. package/dist/public/sdk/runtime-device-link-CagI2Q62.js +0 -1
  295. package/dist/public/sdk/runtime-ecdsa-tempo-Rctxr0yM.js +0 -1
  296. package/dist/public/sdk/runtime-email-otp-BQtcG-LF.js +0 -1
  297. package/dist/public/sdk/runtime-export-wTeEaqlk.js +0 -1
  298. package/dist/public/sdk/runtime-near-59yU_3ud.js +0 -1
  299. package/dist/public/sdk/runtime-preferences-B9qLHX8W.js +0 -1
  300. package/dist/public/sdk/runtime-recovery-DNyzdMBj.js +0 -1
  301. package/dist/public/sdk/runtimeContext-ByeM6Z4Z.js +0 -6
  302. package/dist/public/sdk/sessionObservationRevision-ihBwjS3y.js +0 -1
  303. package/dist/public/sdk/signEvmFamily-BY5jlZEG.js +0 -1
  304. package/dist/public/sdk/signNear-DMpJFkwF.js +0 -1
  305. package/dist/public/sdk/signer-worker-BNodGJKY.js +0 -1
  306. package/dist/public/sdk/walletRecoveryAdminProof-B4Ic07jY.js +0 -1
  307. package/dist/public/sdk/walletRecoveryCommit-Cc2LAkCS.js +0 -1
  308. package/dist/types/shared-ts/src/authorization/walletCustodyOperation.d.ts +0 -10
  309. /package/dist/{public/sdk/accountIds-CW2BP-d9.js → esm/sdk/accountIds-DGWFzEnw.js} +0 -0
  310. /package/dist/{public/sdk/actions-DrtSTGus.js → esm/sdk/actions-7SvZZut1.js} +0 -0
  311. /package/dist/{public/sdk/authenticatorOptions-WCDKYRux.js → esm/sdk/authenticatorOptions-B4q62CLs.js} +0 -0
  312. /package/dist/{public/sdk/confirmTypes-BvVtQs-M.js → esm/sdk/confirmTypes-DmEPoxys.js} +0 -0
  313. /package/dist/{public/sdk/csp-stylesheet-DUSqfXvZ.js → esm/sdk/csp-stylesheet-5LU6VGKK.js} +0 -0
  314. /package/dist/{public/sdk/digestEncoding-CqNXPZY9.js → esm/sdk/digestEncoding-34kXJoJr.js} +0 -0
  315. /package/dist/{public/sdk/ecdsaChainTarget-Bm5X4k-V.js → esm/sdk/ecdsaChainTarget-BoRVQtjQ.js} +0 -0
  316. /package/dist/{public/sdk/executeWorkerOperation-C9FOCCR7.js → esm/sdk/executeWorkerOperation-CAYSt0NA.js} +0 -0
  317. /package/dist/{public/sdk/helpers-Dubwo5uK.js → esm/sdk/helpers-B7c1zc7h.js} +0 -0
  318. /package/dist/{public/sdk/jsonRpc-BVDv1wfm.js → esm/sdk/jsonRpc-DGzeiNSa.js} +0 -0
  319. /package/dist/{public/sdk/keccak-mS0Mejjx.js → esm/sdk/keccak-DGHI1G6t.js} +0 -0
  320. /package/dist/{public/sdk/keyMaterialEnvelope-Dm2ZEilb.js → esm/sdk/keyMaterialEnvelope-Czkks9Ki.js} +0 -0
  321. /package/dist/{public/sdk/presignatures-BCeq56DG.js → esm/sdk/presignatures-CkhuZ0YQ.js} +0 -0
  322. /package/dist/{public/sdk/profileAccountProjection-C5sNt-s2.js → esm/sdk/profileAccountProjection-dvLchPBo.js} +0 -0
  323. /package/dist/{public/sdk/registrationAuthMethodInput-BR1WVbK3.js → esm/sdk/registrationAuthMethodInput-C4o7yFBJ.js} +0 -0
  324. /package/dist/{public/sdk/sdkSentEvents-DjOlKtdW.js → esm/sdk/sdkSentEvents-BFwv3mBw.js} +0 -0
  325. /package/dist/{public/sdk/signerDomain-BAsLT3XN.js → esm/sdk/signerDomain-D-EUTlLK.js} +0 -0
  326. /package/dist/{public/sdk/signerSlot-D2RZnb27.js → esm/sdk/signerSlot-BlijMq8C.js} +0 -0
  327. /package/dist/{public/sdk/surface-measurement-reporter-DXsvq401.js → esm/sdk/surface-measurement-reporter-DJ_dQhBV.js} +0 -0
  328. /package/dist/{public/sdk/walletCustodyOperation-DimzAbCB.js → esm/sdk/walletOwnerOperation-CScYv2K6.js} +0 -0
  329. /package/dist/{public/sdk/walletSessionAuthorizationStatus-DG7DPcgR.js → esm/sdk/walletSessionAuthorizationStatus-GhcGvDCX.js} +0 -0
  330. /package/dist/{esm/sdk/accountIds-CW2BP-d9.js → public/sdk/accountIds-DGWFzEnw.js} +0 -0
  331. /package/dist/{esm/sdk/actions-DrtSTGus.js → public/sdk/actions-7SvZZut1.js} +0 -0
  332. /package/dist/{esm/sdk/authenticatorOptions-WCDKYRux.js → public/sdk/authenticatorOptions-B4q62CLs.js} +0 -0
  333. /package/dist/{esm/sdk/confirmTypes-BvVtQs-M.js → public/sdk/confirmTypes-DmEPoxys.js} +0 -0
  334. /package/dist/{esm/sdk/csp-stylesheet-DUSqfXvZ.js → public/sdk/csp-stylesheet-5LU6VGKK.js} +0 -0
  335. /package/dist/{esm/sdk/digestEncoding-CqNXPZY9.js → public/sdk/digestEncoding-34kXJoJr.js} +0 -0
  336. /package/dist/{esm/sdk/ecdsaChainTarget-Bm5X4k-V.js → public/sdk/ecdsaChainTarget-BoRVQtjQ.js} +0 -0
  337. /package/dist/{esm/sdk/executeWorkerOperation-C9FOCCR7.js → public/sdk/executeWorkerOperation-CAYSt0NA.js} +0 -0
  338. /package/dist/{esm/sdk/helpers-Dubwo5uK.js → public/sdk/helpers-B7c1zc7h.js} +0 -0
  339. /package/dist/{esm/sdk/jsonRpc-BVDv1wfm.js → public/sdk/jsonRpc-DGzeiNSa.js} +0 -0
  340. /package/dist/{esm/sdk/keccak-mS0Mejjx.js → public/sdk/keccak-DGHI1G6t.js} +0 -0
  341. /package/dist/{esm/sdk/keyMaterialEnvelope-Dm2ZEilb.js → public/sdk/keyMaterialEnvelope-Czkks9Ki.js} +0 -0
  342. /package/dist/{esm/sdk/presignatures-BCeq56DG.js → public/sdk/presignatures-CkhuZ0YQ.js} +0 -0
  343. /package/dist/{esm/sdk/profileAccountProjection-C5sNt-s2.js → public/sdk/profileAccountProjection-dvLchPBo.js} +0 -0
  344. /package/dist/{esm/sdk/registrationAuthMethodInput-BR1WVbK3.js → public/sdk/registrationAuthMethodInput-C4o7yFBJ.js} +0 -0
  345. /package/dist/{esm/sdk/sdkSentEvents-DjOlKtdW.js → public/sdk/sdkSentEvents-BFwv3mBw.js} +0 -0
  346. /package/dist/{esm/sdk/signerDomain-BAsLT3XN.js → public/sdk/signerDomain-D-EUTlLK.js} +0 -0
  347. /package/dist/{esm/sdk/signerSlot-D2RZnb27.js → public/sdk/signerSlot-BlijMq8C.js} +0 -0
  348. /package/dist/{esm/sdk/surface-measurement-reporter-DXsvq401.js → public/sdk/surface-measurement-reporter-DJ_dQhBV.js} +0 -0
  349. /package/dist/{esm/sdk/walletCustodyOperation-DimzAbCB.js → public/sdk/walletOwnerOperation-CScYv2K6.js} +0 -0
  350. /package/dist/{esm/sdk/walletSessionAuthorizationStatus-DG7DPcgR.js → public/sdk/walletSessionAuthorizationStatus-GhcGvDCX.js} +0 -0
@@ -5,14 +5,14 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>Web3Authn Wallet Service</title>
7
7
  <!-- Surface styles are external so strict CSP can keep style-src 'self' -->
8
- <link rel="stylesheet" href="/sdk/wallet-ui.css?v=0.28.0" />
8
+ <link rel="stylesheet" href="/sdk/wallet-ui.css?v=0.29.0" />
9
9
  <!-- Minimal shims some ESM bundles expect (externalized to enable strict CSP) -->
10
- <script src="/sdk/wallet-shims.js?v=0.28.0"></script>
10
+ <script src="/sdk/wallet-shims.js?v=0.29.0"></script>
11
11
  <!-- Hint the browser to fetch the host script earlier -->
12
- <link rel="modulepreload" href="/sdk/wallet-iframe-host-runtime.js?v=0.28.0" crossorigin>
12
+ <link rel="modulepreload" href="/sdk/wallet-iframe-host-runtime.js?v=0.29.0" crossorigin>
13
13
  </head>
14
14
  <body>
15
15
  <!-- sdkBasePath points to the SDK root (e.g. '/sdk'). Load the host directly. -->
16
- <script type="module" src="/sdk/wallet-iframe-host-runtime.js?v=0.28.0"></script>
16
+ <script type="module" src="/sdk/wallet-iframe-host-runtime.js?v=0.29.0"></script>
17
17
  </body>
18
18
  </html>
@@ -1,16 +1,55 @@
1
1
  import { type WalletId } from '../utils/domainIds';
2
+ import { type Ed25519PublicKeyB64u } from '../passkey-custody/primitives';
2
3
  import type { ReadonlyExclusiveUnion } from '../utils/variant';
4
+ import { type DigestB64u } from '../utils/canonicalPrimitives';
3
5
  export declare const EXTERNAL_AUTH_PATH = "/wallet/external-auth";
4
- export type ExternalAuthConfiguration = ReadonlyExclusiveUnion<{
6
+ export type ExternalAuthProvider = ReadonlyExclusiveUnion<{
5
7
  kind: 'disabled';
6
- revision: number;
7
8
  } | {
8
9
  kind: 'google';
9
- revision: number;
10
10
  clientId: string;
11
+ } | {
12
+ kind: 'application';
13
+ issuer: string;
14
+ publicKeyB64u: Ed25519PublicKeyB64u;
15
+ }>;
16
+ export type ExternalAuthConfiguration = ExternalAuthProvider & Readonly<{
17
+ revision: number;
18
+ }>;
19
+ export type ExternalIdentity = ReadonlyExclusiveUnion<{
20
+ provider: 'google';
21
+ issuer: 'https://accounts.google.com';
22
+ subject: string;
23
+ } | {
24
+ provider: 'application';
25
+ issuer: string;
26
+ subject: string;
27
+ }>;
28
+ export type ExternalIdentityProof = ReadonlyExclusiveUnion<{
29
+ kind: 'google';
30
+ idToken: string;
31
+ } | {
32
+ kind: 'application';
33
+ assertion: string;
11
34
  }>;
35
+ export declare function parseExternalAuthProvider(raw: unknown): ExternalAuthProvider;
12
36
  export declare function parseExternalAuthConfiguration(raw: unknown): ExternalAuthConfiguration;
13
- type ExternalAuthFailureCode = 'invalid_request' | 'invalid_credential' | 'access_denied' | 'expired' | 'superseded' | 'unavailable' | 'rate_limited';
37
+ export declare function serializeExternalIdentity(identity: ExternalIdentity): string;
38
+ export declare function parseStoredExternalIdentity(serialized: string): ExternalIdentity;
39
+ export type ExternalOwnerChallenge = Readonly<{
40
+ walletId: WalletId;
41
+ attemptId: string;
42
+ identity: ExternalIdentity;
43
+ challengeB64u: DigestB64u;
44
+ expiresAtMs: number;
45
+ }> & ReadonlyExclusiveUnion<{
46
+ kind: 'associate';
47
+ } | {
48
+ kind: 'unlink';
49
+ associationId: string;
50
+ }>;
51
+ export declare function parseExternalOwnerChallenge(raw: unknown): ExternalOwnerChallenge;
52
+ type ExternalAuthFailureCode = 'invalid_request' | 'invalid_credential' | 'access_denied' | 'expired' | 'superseded' | 'unavailable' | 'rate_limited' | 'cancelled';
14
53
  export type ExternalAuthResult<T> = ReadonlyExclusiveUnion<{
15
54
  ok: true;
16
55
  value: T;
@@ -29,7 +68,9 @@ export type ExternalAuthenticateInput = ReadonlyExclusiveUnion<{
29
68
  attemptId: string;
30
69
  code: string;
31
70
  }>;
32
- export type ExternalAuthAttempt = Readonly<{
71
+ export type ExternalAuthPurpose = 'authenticate' | 'associate';
72
+ export type ExternalAuthAttempt<Purpose extends ExternalAuthPurpose = 'authenticate'> = Readonly<{
73
+ purpose: Purpose;
33
74
  attemptId: string;
34
75
  walletId: WalletId;
35
76
  expiresAtMs: number;
@@ -41,9 +82,11 @@ export type ExternalAuthCommand = ReadonlyExclusiveUnion<{
41
82
  action: 'prepare';
42
83
  walletId: string;
43
84
  } | {
44
- action: 'associate';
85
+ action: 'prepare_association';
45
86
  walletId: string;
46
- idToken: string;
87
+ } | {
88
+ action: 'associate';
89
+ input: ExternalAuthenticateInput;
47
90
  } | {
48
91
  action: 'unlink';
49
92
  walletId: string;
@@ -56,7 +99,7 @@ export type ExternalWalletAuthentication = Readonly<{
56
99
  sessionId: string;
57
100
  associationId: string;
58
101
  environmentId: string;
59
- provider: 'google';
102
+ provider: ExternalIdentity['provider'];
60
103
  permission: 'wallet_settings_read';
61
104
  expiresAtMs: number;
62
105
  authMethod?: never;
@@ -1,7 +1,7 @@
1
1
  export * from './capabilityKinds';
2
2
  export * from './delegatedAuthority';
3
3
  export * from './operationFingerprint';
4
- export * from './walletCustodyOperation';
4
+ export * from './walletOwnerOperation';
5
5
  export * from './walletAuthority';
6
6
  export * from './walletSessionIssuance';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,10 @@
1
+ import { type DigestB64u } from '../utils/canonicalPrimitives';
2
+ export type WalletOwnerAdminOperation = 'external_identity_associate' | 'external_identity_unlink' | 'credentials_list' | 'credential_label' | 'recovery_rotate' | 'recovery_read' | 'recovery_status' | 'recovery_backup_acknowledge';
3
+ /** Public challenge digest for a single wallet-administration factor proof. */
4
+ export declare function computeWalletOwnerAdminChallengeDigest(input: {
5
+ readonly walletId: string;
6
+ readonly operation: WalletOwnerAdminOperation;
7
+ readonly payload: Record<string, unknown>;
8
+ readonly requestOrigin: string;
9
+ }): Promise<DigestB64u>;
10
+ //# sourceMappingURL=walletOwnerOperation.d.ts.map
@@ -72,6 +72,10 @@ export type RegistrationEstablishedSessionV2 = {
72
72
  readonly tokens: RegistrationEstablishedSessionProjectionTokensV2;
73
73
  };
74
74
  export type RegistrationEstablishedSessionResultV2 = {
75
+ readonly kind: 'owner_operations';
76
+ readonly walletId: WalletId;
77
+ readonly session?: never;
78
+ } | {
75
79
  readonly kind: 'issued';
76
80
  readonly session: RegistrationEstablishedSessionV2;
77
81
  } | {
@@ -18,7 +18,9 @@ export type RuntimePolicyScopeLike = {
18
18
  envId: string;
19
19
  signingRootVersion?: string;
20
20
  };
21
+ export type RegistrationCompletion = 'wallet_session' | 'owner_operations';
21
22
  export type RegistrationIntentV1 = {
23
+ completion: RegistrationCompletion;
22
24
  version: 'registration_intent_v1';
23
25
  walletId: WalletId;
24
26
  authMethod: RegistrationAuthMethodInput;
@@ -1,3 +1,3 @@
1
1
  export declare const WALLET_MANAGEMENT_PROTOCOL_HEADER = "X-Seams-Wallet-Protocol";
2
- export declare const WALLET_MANAGEMENT_PROTOCOL_VERSION = "4";
2
+ export declare const WALLET_MANAGEMENT_PROTOCOL_VERSION = "5";
3
3
  //# sourceMappingURL=walletManagementProtocol.d.ts.map
@@ -40,6 +40,7 @@ type PendingRegistrationRecoveryResult = {
40
40
  readonly error: Error;
41
41
  };
42
42
  export declare function registrationProjectionFromPending(pending: PendingEd25519RegistrationCommit, finalized: FinalizedNearProvisioningResponse): Promise<StoreWalletRegistrationPublicationInputV1>;
43
+ export declare function publicationInputFromPending(pending: PendingEd25519RegistrationCommit, finalized: FinalizedNearProvisioningResponse, registration: StoreWalletRegistrationPublicationInputV1): PublishPendingWalletRegistrationCommitInputV1;
43
44
  /** Converts persisted joined material into the current continuation input. */
44
45
  export declare function restorePendingNearRegistrationMaterial(args: {
45
46
  readonly relayerUrl: string;
@@ -16,6 +16,7 @@ import { type EmailOtpProvider } from '../../../../../shared-ts/src/utils/wallet
16
16
  import { RegistrationPasskeyAuthority } from './registrationEd25519Yao';
17
17
  export { REGISTRATION_TIMING_LABEL, emitRegistrationTimingSpan, parseYaoServerTimingBuckets, recordStrictEcdsaServerTimingBuckets, } from './registrationTiming';
18
18
  type RegisterWalletOperationInput = {
19
+ completion: import('../../../../../shared-ts/src/utils/registrationIntent').RegistrationCompletion;
19
20
  context: RegistrationWebContext;
20
21
  authMethod: RegistrationAuthMethodInput;
21
22
  wallet: RegisterWalletInput;
@@ -0,0 +1,24 @@
1
+ import type { StoreWalletRegistrationPublicationInputV1 } from '../../../core/indexedDB/seamsWalletDB/repositories';
2
+ import { type Ed25519YaoLocalMaterialIdentity } from '../../../core/signingEngine/session/passkey/ed25519YaoLocalMaterial';
3
+ import { type LoadedWalletCustodyEd25519MaterialV1 } from '../../../core/signingEngine/walletCustody/ed25519SeedMaterial';
4
+ import { type WalletCustodyCacheEnvelopeV1 } from '../../../core/signingEngine/walletCustody/openCustodyCache';
5
+ import type { JoinedWalletCustodyNearEd25519KeySetV1 } from '../../signingSurface/ports';
6
+ import type { registrationEd25519MaterialFacts } from './registrationEd25519Yao';
7
+ type PasskeyRegistrationMaterial = {
8
+ metadata: JoinedWalletCustodyNearEd25519KeySetV1['metadata'];
9
+ material: LoadedWalletCustodyEd25519MaterialV1;
10
+ materialFacts: ReturnType<typeof registrationEd25519MaterialFacts>;
11
+ envelope: WalletCustodyCacheEnvelopeV1;
12
+ ownedFactorSecret: Uint8Array;
13
+ };
14
+ export declare function openPasskeyRegistrationEd25519Material(args: PasskeyRegistrationMaterial): Promise<import("../../../core/signingEngine/threshold/ed25519/yaoClient").RouterAbEd25519YaoSealableActiveClientV1>;
15
+ export declare function passkeyRegistrationLocalMaterialIdentity(materialFacts: ReturnType<typeof registrationEd25519MaterialFacts>, rpId: string, credentialIdB64u: string): Ed25519YaoLocalMaterialIdentity;
16
+ /** Include sealed owner material in the registration transaction. No live client escapes this function. */
17
+ export declare function prepareOwnerRegistrationPublication(args: PasskeyRegistrationMaterial & {
18
+ registration: StoreWalletRegistrationPublicationInputV1;
19
+ rpId: string;
20
+ credentialIdB64u: string;
21
+ passkeyPrfFirstB64u: string;
22
+ }): Promise<StoreWalletRegistrationPublicationInputV1>;
23
+ export {};
24
+ //# sourceMappingURL=registrationPasskeyMaterial.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import type { AuthCapability } from '../signingSurface/types';
2
2
  export type WalletAuthCommands = Omit<AuthCapability, 'onSessionChange'>;
3
- export type WalletSessionCommands = Pick<AuthCapability, 'authenticate' | 'prepareExternalAuth' | 'associateExternalAuth' | 'removeExternalAuth' | 'unlock' | 'unlockWithAuthMethod' | 'lock' | 'getSession' | 'getRecentUnlocks' | 'hasPasskey'>;
3
+ export type WalletSessionCommands = Pick<AuthCapability, 'authenticate' | 'prepareExternalAuth' | 'prepareExternalAssociation' | 'associateExternalAuth' | 'removeExternalAuth' | 'unlock' | 'unlockWithAuthMethod' | 'lock' | 'getSession' | 'getRecentUnlocks' | 'hasPasskey'>;
4
4
  export type EmailOtpAuthCommands = Pick<AuthCapability, 'requestEmailCode' | 'unlockWithEmailCode' | 'startGoogleSignIn'>;
5
5
  export declare function unlockWithEmailCode(args: Parameters<AuthCapability['unlockWithEmailCode']>[0]): ReturnType<AuthCapability['unlockWithEmailCode']>;
6
6
  //# sourceMappingURL=auth.d.ts.map
@@ -11,6 +11,7 @@ import type { RegisterWalletInput } from '../../../../shared-ts/src/utils/regist
11
11
  import type { RegistrationSignerSetSelection } from '../../../../shared-ts/src/utils/registrationSignerPlan';
12
12
  /** A registration request after public defaults are resolved. */
13
13
  export type WalletRegistrationCommand = Omit<Parameters<RegistrationCapability['registerWallet']>[0], 'wallet' | 'signerSelection'> & {
14
+ readonly completion: import('../../../../shared-ts/src/utils/registrationIntent').RegistrationCompletion;
14
15
  readonly wallet: RegisterWalletInput;
15
16
  readonly signerSelection: RegistrationSignerSetSelection;
16
17
  };
@@ -10,6 +10,8 @@ type ResolvedNearInput<T extends {
10
10
  options: NonNullable<T['options']>;
11
11
  };
12
12
  export type NearCommands = {
13
+ ownerOperation: import('./ownerNearOperation').ExecuteOwnerNearOperation;
14
+ } & {
13
15
  [K in NearSigningOperation]: (args: ResolvedNearInput<Parameters<NearSignerCapability[K]>[0]>) => ReturnType<NearSignerCapability[K]>;
14
16
  };
15
17
  export type CreateNearCommands = (dispatch: TransactionDispatch) => NearCommands;
@@ -0,0 +1,58 @@
1
+ import { type TransactionInput } from '../../core/types/actions';
2
+ import type { ActionResult } from '../../core/types/seams';
3
+ import type { ExternalWalletAuthentication } from '../../../../shared-ts/src/auth/externalAuth';
4
+ import type { ReadonlyExclusiveUnion } from '../../../../shared-ts/src/utils/variant';
5
+ import { type OwnerNearCommand, type OwnerNearOutcome, type OwnerNearRecovery } from '../walletIframe/shared/ownerNearOperation';
6
+ export type { OwnerNearOutcome, OwnerNearRecovery, } from '../walletIframe/shared/ownerNearOperation';
7
+ export type OwnerNearOperationState = Readonly<{
8
+ recovery: OwnerNearRecovery;
9
+ }> & ReadonlyExclusiveUnion<{
10
+ kind: 'prepared';
11
+ expiresAtMs: number;
12
+ } | {
13
+ kind: 'approval';
14
+ expiresAtMs: number;
15
+ } | {
16
+ kind: 'submitting';
17
+ } | {
18
+ kind: 'unknown';
19
+ } | {
20
+ kind: 'completed';
21
+ result: Extract<ActionResult, {
22
+ success: true;
23
+ }>;
24
+ } | {
25
+ kind: 'reverted';
26
+ transactionId: string;
27
+ error: string;
28
+ } | {
29
+ kind: 'cancelled';
30
+ } | {
31
+ kind: 'expired';
32
+ } | {
33
+ kind: 'failed';
34
+ error: string;
35
+ }>;
36
+ export interface OwnerNearOperation {
37
+ getState(): OwnerNearOperationState;
38
+ subscribe(listener: () => void): () => void;
39
+ approve(): Promise<OwnerNearOutcome>;
40
+ cancel(): void;
41
+ recover(): Promise<OwnerNearOutcome>;
42
+ }
43
+ export type PrepareOwnerNearTransaction = {
44
+ readonly authentication: ExternalWalletAuthentication;
45
+ readonly nearAccountId: string;
46
+ readonly transaction: TransactionInput;
47
+ };
48
+ export type ResumeOwnerNearTransaction = {
49
+ readonly authentication: ExternalWalletAuthentication;
50
+ readonly recovery: OwnerNearRecovery;
51
+ };
52
+ export type ExecuteOwnerNearOperation = (command: OwnerNearCommand, execution: {
53
+ readonly signal: AbortSignal;
54
+ readonly onSubmission: () => void;
55
+ }) => Promise<OwnerNearOutcome>;
56
+ export declare function prepareOwnerNearTransaction(execute: ExecuteOwnerNearOperation, input: PrepareOwnerNearTransaction): OwnerNearOperation;
57
+ export declare function resumeOwnerNearTransaction(execute: ExecuteOwnerNearOperation, input: ResumeOwnerNearTransaction): OwnerNearOperation;
58
+ //# sourceMappingURL=ownerNearOperation.d.ts.map
@@ -25,7 +25,7 @@ import type { AddEmailOtpHooksOptions, AddEmailOtpResult } from '../operations/a
25
25
  import type { RevokeAuthMethodResult } from '../operations/authMethods/revokeAuthMethod';
26
26
  import type { WalletRecoveryBackupAcknowledgementResult, WalletRecoveryCodeStatusResult, WalletCustodyEmailOtpChallengeResult } from '../../core/rpcClients/relayer/walletRecoveryRotate';
27
27
  import type { WalletRecoveryRotationAuthorization } from '../operations/recovery/walletRecoveryRotation';
28
- import type { WalletCustodyAdminOperation } from '../../../../shared-ts/src/authorization/walletCustodyOperation';
28
+ import type { WalletOwnerAdminOperation } from '../../../../shared-ts/src/authorization/walletOwnerOperation';
29
29
  import type { WalletRecoveryRotationOutcome } from '../../core/signingEngine/walletCustody/walletRecoveryRotation';
30
30
  import type { EvmAddress, EvmBytes, EvmSigningRequest } from '../../core/signingEngine/chains/evm/evmSigning.types';
31
31
  import type { TempoSigningRequest } from '../../core/signingEngine/chains/tempo/tempoSigning.types';
@@ -495,10 +495,8 @@ export type RequestEmailCodeInput = ExclusiveUnion<{
495
495
  export interface AuthCapability {
496
496
  authenticate(input: ExternalAuthenticateInput): Promise<ExternalAuthResult<ExternalWalletAuthentication>>;
497
497
  prepareExternalAuth(walletId: string): Promise<ExternalAuthResult<ExternalAuthAttempt>>;
498
- associateExternalAuth(input: {
499
- walletId: string;
500
- idToken: string;
501
- }): Promise<ExternalAuthResult<null>>;
498
+ prepareExternalAssociation(walletId: string): Promise<ExternalAuthResult<ExternalAuthAttempt<'associate'>>>;
499
+ associateExternalAuth(input: ExternalAuthenticateInput): Promise<ExternalAuthResult<null>>;
502
500
  removeExternalAuth(input: {
503
501
  walletId: string;
504
502
  associationId: string;
@@ -588,6 +586,14 @@ export interface RegistrationCapability {
588
586
  walletId: WalletId | string;
589
587
  walletAuthMethodId: string;
590
588
  }): Promise<RevokeAuthMethodResult>;
589
+ registerOwnerWallet(args: {
590
+ authMethod: Extract<RegistrationAuthMethodInput, {
591
+ kind: 'passkey';
592
+ }>;
593
+ wallet?: RegisterWalletInput;
594
+ signerSelection: RegistrationSignerSetSelection;
595
+ options?: RegistrationHooksOptions;
596
+ }): Promise<RegistrationResult>;
591
597
  registerWallet(args: {
592
598
  authMethod: RegistrationAuthMethodInput;
593
599
  /** Omit to let the server assign a new wallet ID. */
@@ -611,6 +617,8 @@ type NearSubjectInput = {
611
617
  nearAccount?: NearAccountRef | string;
612
618
  };
613
619
  export interface NearSignerCapability {
620
+ prepareOwnerTransaction(input: import('./ownerNearOperation').PrepareOwnerNearTransaction): import('./ownerNearOperation').OwnerNearOperation;
621
+ resumeOwnerTransaction(input: import('./ownerNearOperation').ResumeOwnerNearTransaction): import('./ownerNearOperation').OwnerNearOperation;
614
622
  /** Returns false only for an absent account; unavailable RPC reads reject. */
615
623
  accountExists(accountId: string): Promise<boolean>;
616
624
  signAndSendTransaction(args: NearSubjectInput & {
@@ -715,7 +723,7 @@ export interface RecoveryCapability {
715
723
  requestWalletCustodyEmailOtpChallenge(args: {
716
724
  walletId: string;
717
725
  providerSubjectId: string;
718
- operation: WalletCustodyAdminOperation;
726
+ operation: WalletOwnerAdminOperation;
719
727
  payload: Record<string, unknown>;
720
728
  requestOrigin?: string;
721
729
  }): Promise<WalletCustodyEmailOtpChallengeResult>;
@@ -1,71 +1,70 @@
1
- import type { WalletSessionHome } from '../../../../shared-ts/src/device-linking/contracts';
1
+ import type { OwnerNearCommand } from '../walletIframe/shared/ownerNearOperation';
2
+ import { type StoreNearThresholdKeyMaterialInput } from '../../core/accountData/near/keyMaterial';
3
+ import type { AuthMethodSessionInstaller, AuthMethodUnlockSuccess } from '../../core/authMethods/hostPlugin';
4
+ import { type ImportWalletCustodyEcdsaContinuityInput } from '../../core/indexedDB/seamsWalletDB/walletCustodyEcdsaContinuity';
2
5
  import type { NearClient } from '../../core/rpcClients/near/NearClient';
6
+ import type { WalletRecoveryRegistrationOptions } from '../../core/rpcClients/relayer/walletRecoveryPrepare';
7
+ import type { WalletAddAuthMethodRegistrationOptions } from '../../core/rpcClients/relayer/walletRegistration';
8
+ import { WalletSessionStatusReadScope } from '../../core/rpcClients/relayer/walletSessionAuthorizationStatus';
9
+ import type { WorkerResourceWarmupAccountContext, WorkerResourceWarmupDiagnostics } from '../../core/signingEngine/assembly/warmup';
10
+ import type { EvmSignedResult } from '../../core/signingEngine/chains/evm/evmAdapter';
11
+ import type { EvmSigningRequest } from '../../core/signingEngine/chains/evm/evmSigning.types';
12
+ import type { TempoSignedResult } from '../../core/signingEngine/chains/tempo/tempoAdapter';
13
+ import type { TempoSigningRequest } from '../../core/signingEngine/chains/tempo/tempoSigning.types';
14
+ import type { SigningEngineExportKeypairWithUIInput, SigningEngineResolveExactKeyExportLaneInput, SigningEngineResolveExactKeyExportLaneResult } from '../../core/signingEngine/flows/recovery/public';
15
+ import * as registrationAccount from '../../core/signingEngine/flows/registration/accountLifecycle';
16
+ import { finalizeWalletRegistrationEcdsaSessions as finalizeWalletRegistrationEcdsaSessionsOperation } from '../../core/signingEngine/flows/registration/services/ecdsaRegistrationSessions';
17
+ import { type LoginWithEmailOtpEcdsaCapabilityInternalArgs, type LoginWithEmailOtpEcdsaCapabilityInternalResult, type PrepareEmailOtpRegistrationEnrollmentMaterialInternalArgs, type PrepareEmailOtpRegistrationEnrollmentMaterialInternalResult } from '../../core/signingEngine/flows/signEvmFamily/emailOtpPublic';
18
+ import { type ReconcileTempoNonceLaneArgs, type ReportTempoBroadcastAcceptedArgs, type ReportTempoBroadcastRejectedArgs, type ReportTempoDroppedOrReplacedArgs, type ReportTempoFinalizedArgs, type TempoNonceLaneStatus } from '../../core/signingEngine/flows/signEvmFamily/signEvmFamily';
19
+ import { type NearSignIntentRequest, type NearSignIntentResult } from '../../core/signingEngine/flows/signNear/signNear';
20
+ import { type ThresholdEcdsaChainTarget, type WalletId, type WalletSessionRef } from '../../core/signingEngine/interfaces/ecdsaChainTarget';
21
+ import type { NearEd25519YaoOperationMaterial } from '../../core/signingEngine/interfaces/near';
3
22
  import type { NonceCoordinator } from '../../core/signingEngine/nonce/NonceCoordinator';
4
- import { type AccountId } from '../../core/types/accountIds';
5
- import type { SdkLifecycleEvent, SdkLifecycleEventListener, SigningFlowEvent } from '../../core/types/sdkSentEvents';
6
- import type { AppearanceConfig, SigningSessionStatus, SeamsConfigsReadonly, WalletAuthenticationState } from '../../core/types/seams';
7
- import type { AuthMethodSessionInstaller, AuthMethodUnlockSuccess } from '../../core/authMethods/hostPlugin';
8
- import type { WebAuthnAuthenticationCredential } from '../../core/types';
23
+ import { type EmailOtpAuthorityUnlockEd25519Request } from '../../core/signingEngine/session/emailOtp/walletUnlock';
24
+ import type { OwnerLaneScope } from '../../core/signingEngine/session/identity/signingLaneAuthBinding';
25
+ import type { EcdsaRoleLocalPersistedMaterialRef } from '../../core/signingEngine/session/keyMaterialBrands';
26
+ import type { EcdsaBootstrapRequest } from '../../core/signingEngine/session/passkey/ecdsaBootstrap';
27
+ import type { ConnectEd25519SessionArgs } from '../../core/signingEngine/session/passkey/public';
28
+ import type { ExactWalletSessionAuthorization } from '../../core/signingEngine/session/persistence/walletSessionAuthorizationProjection';
29
+ import type { AvailableSigningLanes, DiscoverPersistedSessionsForWalletInput, DiscoverPersistedSessionsForWalletResult, ReadAvailableSigningLanesInput } from '../../core/signingEngine/session/public';
9
30
  import type { UserPreferencesManager } from '../../core/signingEngine/session/userPreferences';
10
- import type { NearEd25519YaoOperationMaterial } from '../../core/signingEngine/interfaces/near';
31
+ import { type RouterAbEcdsaDerivationLoginPresignaturePrefillResult } from '../../core/signingEngine/session/warmCapabilities/ecdsaLoginPrefill';
32
+ import * as warmCapabilitiesPublic from '../../core/signingEngine/session/warmCapabilities/public';
33
+ import type { ProvisionWarmEd25519CapabilityResult } from '../../core/signingEngine/session/warmCapabilities/types';
34
+ import type { RegistrationWebAuthnPromptOwner, ReservedRegistrationWebAuthnPrompt, WebAuthnPromptCancellation } from '../../core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator';
35
+ import type { ThresholdEcdsaSessionBootstrapResult } from '../../core/signingEngine/threshold/ecdsa/activation';
11
36
  import type { Ed25519YaoActiveClientIdentityV1 } from '../../core/signingEngine/threshold/ed25519/yaoActiveClientRegistry';
37
+ import type { RouterAbEd25519YaoActiveClientMetadataV1 } from '../../core/signingEngine/threshold/ed25519/yaoClient';
12
38
  import { type Ed25519YaoPublicCapabilityLaneReferenceV1, type Ed25519YaoPublicCapabilityReferenceV1 } from '../../core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences';
13
- import type { ThresholdEcdsaSessionBootstrapResult } from '../../core/signingEngine/threshold/ecdsa/activation';
39
+ import type { PasskeyMpcSessionPort, UiConfirmSurfaceMeasurementBinding } from '../../core/signingEngine/uiConfirm/uiConfirm.types';
40
+ import type { LoginWithEmailOtpWalletCustodyEd25519Args } from '../../core/signingEngine/walletCustody/ed25519Login';
41
+ import { type WalletCustodyEd25519Projection } from '../../core/signingEngine/walletCustody/ed25519Projection';
42
+ import { type LoadedWalletCustodyEd25519MaterialV1, type WalletCustodyEd25519MaterialBindingV1, type WalletCustodySealedEd25519MaterialV1 } from '../../core/signingEngine/walletCustody/ed25519SeedMaterial';
43
+ import type { WalletCustodyCacheEnvelopeV1 } from '../../core/signingEngine/walletCustody/openCustodyCache';
14
44
  import { establishEvmFamilyCustodyV1, joinEvmFamilyCustodyV1 } from '../../core/signingEngine/walletCustody/registrationCeremony';
45
+ import { type WalletRecoveryReplacementCredential } from '../../core/signingEngine/walletCustody/walletRecoveryCredential';
15
46
  import { type WalletSessionEd25519RecoveryBasisV1 } from '../../core/signingEngine/walletCustody/walletRecoveryEd25519';
16
47
  import { recoverWalletCustodyManifestV1 } from '../../core/signingEngine/walletCustody/walletRecoveryManifest';
17
- import { type LoadedWalletCustodyEd25519MaterialV1, type WalletCustodyEd25519MaterialBindingV1, type WalletCustodySealedEd25519MaterialV1 } from '../../core/signingEngine/walletCustody/ed25519SeedMaterial';
18
- import type { EstablishWalletCustodyNearEd25519KeySetArgs, EstablishedWalletCustodyEvmFamilyKeySetV1, EstablishedWalletCustodyNearEd25519KeySetV1, JoinedWalletCustodyNearEd25519KeySetV1, JoinedWalletCustodyEvmFamilyKeySetV1, RejoinedWalletCustodyEvmFamilyKeySetV1, EmailOtpOwnerConfirmationPurpose } from './ports';
19
- import { type RouterAbEd25519YaoRegistrationAdmissionRequestV1 } from '../../../../shared-ts/src/utils/routerAbEd25519Yao';
20
- import type { RouterAbTraceContextV1 } from '../../../../shared-ts/src/utils/routerAbTraceContext';
21
- import type { SignerWorkerKind, SignerWorkerOperationRequest, SignerWorkerOperationResult, SignerWorkerOperationType, EmailOtpYaoPrewarmRequest, EmailOtpYaoPrewarmOutcome } from '../../core/signingEngine/workerManager/workerTypes';
22
- import type { WorkerOperationContext } from '../../core/signingEngine/workerManager/executeWorkerOperation';
23
- import { type ImportWalletCustodyEcdsaContinuityInput } from '../../core/indexedDB/seamsWalletDB/walletCustodyEcdsaContinuity';
24
- import type { EcdsaRoleLocalPersistedMaterialRef } from '../../core/signingEngine/session/keyMaterialBrands';
25
- import type { PasskeyMpcSessionPort, UiConfirmSurfaceMeasurementBinding } from '../../core/signingEngine/uiConfirm/uiConfirm.types';
26
48
  import type { WebAuthnAllowCredential } from '../../core/signingEngine/webauthnAuth/credentials/collectAuthenticationCredentialForChallengeB64u';
27
- import type { EvmSigningRequest } from '../../core/signingEngine/chains/evm/evmSigning.types';
28
- import type { EvmSignedResult } from '../../core/signingEngine/chains/evm/evmAdapter';
29
- import type { TempoSigningRequest } from '../../core/signingEngine/chains/tempo/tempoSigning.types';
30
- import type { TempoSignedResult } from '../../core/signingEngine/chains/tempo/tempoAdapter';
31
- import type { EcdsaBootstrapRequest } from '../../core/signingEngine/session/passkey/ecdsaBootstrap';
32
- import { type ThresholdEcdsaChainTarget, type WalletId, type WalletSessionRef } from '../../core/signingEngine/interfaces/ecdsaChainTarget';
33
- import { type RouterAbEcdsaDerivationLoginPresignaturePrefillResult } from '../../core/signingEngine/session/warmCapabilities/ecdsaLoginPrefill';
34
- import { type NearSignIntentRequest, type NearSignIntentResult } from '../../core/signingEngine/flows/signNear/signNear';
35
- import { type StoreNearThresholdKeyMaterialInput } from '../../core/accountData/near/keyMaterial';
36
- import type { WalletAuthMethodId } from '../../../../shared-ts/src/utils/domainIds';
37
- import { type WalletAuthAuthorityRef } from '../../../../shared-ts/src/utils/walletAuthAuthority';
38
- import { type MpcMaterialActivationRef } from '../../../../shared-ts/src/utils/domainIds';
39
- import { WalletSessionStatusReadScope } from '../../core/rpcClients/relayer/walletSessionAuthorizationStatus';
40
- import { type ReconcileTempoNonceLaneArgs, type ReportTempoBroadcastAcceptedArgs, type ReportTempoBroadcastRejectedArgs, type ReportTempoDroppedOrReplacedArgs, type ReportTempoFinalizedArgs, type TempoNonceLaneStatus } from '../../core/signingEngine/flows/signEvmFamily/signEvmFamily';
41
- import type { SigningEngineResolveExactKeyExportLaneInput, SigningEngineResolveExactKeyExportLaneResult, SigningEngineExportKeypairWithUIInput } from '../../core/signingEngine/flows/recovery/public';
49
+ import type { WorkerOperationContext } from '../../core/signingEngine/workerManager/executeWorkerOperation';
42
50
  import type { RegistrationCredentialConfirmationPayload } from '../../core/signingEngine/workerManager/validation';
51
+ import type { EmailOtpEd25519YaoRecoveryBootstrapV1, EmailOtpYaoPrewarmOutcome, EmailOtpYaoPrewarmRequest, SignerWorkerKind, SignerWorkerOperationRequest, SignerWorkerOperationResult, SignerWorkerOperationType, UnlockedWalletEd25519ExportRootCapabilityDestroyScopeV1 } from '../../core/signingEngine/workerManager/workerTypes';
52
+ import type { WebAuthnAuthenticationCredential } from '../../core/types';
53
+ import { type AccountId } from '../../core/types/accountIds';
54
+ import type { SdkLifecycleEvent, SdkLifecycleEventListener, SigningFlowEvent } from '../../core/types/sdkSentEvents';
55
+ import type { AppearanceConfig, SeamsConfigsReadonly, SigningSessionStatus, WalletAuthenticationState } from '../../core/types/seams';
43
56
  import type { ConfirmationConfig } from '../../core/types/signer-worker';
44
- import * as registrationAccount from '../../core/signingEngine/flows/registration/accountLifecycle';
45
- import { type LoginWithEmailOtpEcdsaCapabilityInternalArgs, type LoginWithEmailOtpEcdsaCapabilityInternalResult, type PrepareEmailOtpRegistrationEnrollmentMaterialInternalArgs, type PrepareEmailOtpRegistrationEnrollmentMaterialInternalResult } from '../../core/signingEngine/flows/signEvmFamily/emailOtpPublic';
46
- import type { ExactWalletSessionAuthorization } from '../../core/signingEngine/session/persistence/walletSessionAuthorizationProjection';
47
- import type { ProvisionWarmEd25519CapabilityResult } from '../../core/signingEngine/session/warmCapabilities/types';
48
- import type { LoginWithEmailOtpWalletCustodyEd25519Args } from '../../core/signingEngine/walletCustody/ed25519Login';
49
- import { type EmailOtpAuthorityUnlockEd25519Request } from '../../core/signingEngine/session/emailOtp/walletUnlock';
50
- import type { WalletCustodyCacheEnvelopeV1 } from '../../core/signingEngine/walletCustody/openCustodyCache';
51
- import { type WalletCustodyEd25519Projection } from '../../core/signingEngine/walletCustody/ed25519Projection';
52
- import type { NearEd25519SignerBinding } from '../../../../shared-ts/src/utils/walletCapabilityBindings';
53
- import type { OwnerLaneScope } from '../../core/signingEngine/session/identity/signingLaneAuthBinding';
54
- import type { EmailOtpEd25519YaoRecoveryBootstrapV1 } from '../../core/signingEngine/workerManager/workerTypes';
55
- import type { RouterAbEd25519YaoActiveClientMetadataV1 } from '../../core/signingEngine/threshold/ed25519/yaoClient';
56
- import type { DiscoverPersistedSessionsForWalletInput, DiscoverPersistedSessionsForWalletResult, ReadAvailableSigningLanesInput, AvailableSigningLanes } from '../../core/signingEngine/session/public';
57
- import * as warmCapabilitiesPublic from '../../core/signingEngine/session/warmCapabilities/public';
58
- import type { ConnectEd25519SessionArgs } from '../../core/signingEngine/session/passkey/public';
57
+ import type { WebAuthnRegistrationCredential } from '../../core/types/webauthn';
58
+ import type { WalletSessionHome } from '../../../../shared-ts/src/device-linking/contracts';
59
59
  import { type PasskeyCustodyEnvelopeRecord } from '../../../../shared-ts/src/passkey-custody';
60
- import type { UnlockedWalletEd25519ExportRootCapabilityDestroyScopeV1 } from '../../core/signingEngine/workerManager/workerTypes';
60
+ import type { WalletAuthMethodId } from '../../../../shared-ts/src/utils/domainIds';
61
+ import { type MpcMaterialActivationRef } from '../../../../shared-ts/src/utils/domainIds';
62
+ import { type RouterAbEd25519YaoRegistrationAdmissionRequestV1 } from '../../../../shared-ts/src/utils/routerAbEd25519Yao';
63
+ import type { RouterAbTraceContextV1 } from '../../../../shared-ts/src/utils/routerAbTraceContext';
64
+ import { type WalletAuthAuthorityRef } from '../../../../shared-ts/src/utils/walletAuthAuthority';
65
+ import type { NearEd25519SignerBinding } from '../../../../shared-ts/src/utils/walletCapabilityBindings';
61
66
  import type { BrowserSigningSurfaceConstructorDeps } from '../assembly/browserSigningSurfacePorts';
62
- import { finalizeWalletRegistrationEcdsaSessions as finalizeWalletRegistrationEcdsaSessionsOperation } from '../../core/signingEngine/flows/registration/services/ecdsaRegistrationSessions';
63
- import type { WorkerResourceWarmupAccountContext, WorkerResourceWarmupDiagnostics } from '../../core/signingEngine/assembly/warmup';
64
- import type { WebAuthnRegistrationCredential } from '../../core/types/webauthn';
65
- import type { WalletRecoveryRegistrationOptions } from '../../core/rpcClients/relayer/walletRecoveryPrepare';
66
- import type { WalletAddAuthMethodRegistrationOptions } from '../../core/rpcClients/relayer/walletRegistration';
67
- import { type WalletRecoveryReplacementCredential } from '../../core/signingEngine/walletCustody/walletRecoveryCredential';
68
- import type { RegistrationWebAuthnPromptOwner, ReservedRegistrationWebAuthnPrompt, WebAuthnPromptCancellation } from '../../core/signingEngine/stepUpConfirmation/passkeyPrompt/webauthnPromptCoordinator';
67
+ import type { EmailOtpOwnerConfirmationPurpose, EstablishedWalletCustodyEvmFamilyKeySetV1, EstablishedWalletCustodyNearEd25519KeySetV1, EstablishWalletCustodyNearEd25519KeySetArgs, JoinedWalletCustodyEvmFamilyKeySetV1, JoinedWalletCustodyNearEd25519KeySetV1, RejoinedWalletCustodyEvmFamilyKeySetV1 } from './ports';
69
68
  type EmailOtpEd25519CustodyCapabilityActivationArgs = {
70
69
  readonly commitQueue: 'acquire' | 'already_acquired';
71
70
  readonly walletSession: WalletSessionRef;
@@ -295,6 +294,9 @@ export declare class BrowserSigningSurface {
295
294
  setWalletIframeSurfaceMeasurementBinding(binding: UiConfirmSurfaceMeasurementBinding): void;
296
295
  getWalletIframeSurfaceMeasurementBinding(): UiConfirmSurfaceMeasurementBinding;
297
296
  getUserPreferences(): UserPreferencesManager;
297
+ signNearOwnerTransaction(command: Extract<OwnerNearCommand, {
298
+ action: 'approve';
299
+ }>, assertCurrent: () => void, onEvent: (event: SigningFlowEvent) => void): Promise<import("../../core/types").SignTransactionResult>;
298
300
  signNear<TRequest extends NearSignIntentRequest>(request: TRequest): Promise<NearSignIntentResult<TRequest>>;
299
301
  private terminateWalletStateAfterSigningFailure;
300
302
  private ensureNearEd25519YaoCapabilityForSigning;
@@ -313,7 +315,6 @@ export declare class BrowserSigningSurface {
313
315
  private authorizeAndRehydrateEmailOtpEd25519OperationMaterial;
314
316
  private resolveExactNearEd25519YaoSigningHydration;
315
317
  private prepareExactPasskeyEd25519YaoOperationStepUpForSigning;
316
- private rehydratePreparedPasskeyEd25519YaoOperationStepUp;
317
318
  private resolveExactPasskeyEd25519YaoExportContext;
318
319
  private resolveLinkedPasskeyEd25519YaoExportContext;
319
320
  private readExactEmailOtpEd25519ExportAuthorization;
@@ -0,0 +1,16 @@
1
+ import type { SigningOperationId } from '../../core/signingEngine/session/operationState/types';
2
+ import type { WalletId } from '../../core/signingEngine/interfaces/ecdsaChainTarget';
3
+ import type { NearSigningApiDeps } from '../../core/signingEngine/interfaces/operationDeps';
4
+ import type { Ed25519YaoPublicCapabilityReferenceStorePort } from '../../core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences';
5
+ import type { AccountId } from '../../core/types/accountIds';
6
+ type OwnerOperationInput = {
7
+ readonly operationId: SigningOperationId;
8
+ readonly walletId: WalletId;
9
+ readonly nearAccountId: AccountId;
10
+ readonly relayerUrl: string;
11
+ readonly assertCurrent: () => void;
12
+ };
13
+ /** This projection contains durable material and fresh owner proof. It has no reusable authority. */
14
+ export declare function createNearOwnerOperationDeps(base: NearSigningApiDeps, lanes: Pick<Ed25519YaoPublicCapabilityReferenceStorePort, 'listLanes'>, input: OwnerOperationInput): Promise<NearSigningApiDeps>;
15
+ export {};
16
+ //# sourceMappingURL=nearOwnerOperation.d.ts.map
@@ -0,0 +1,72 @@
1
+ import type { ResolveSelectedWalletAuthorityResultV1 } from '../../core/indexedDB/seamsWalletDB/repositories';
2
+ import { type WalletId } from '../../core/signingEngine/interfaces/ecdsaChainTarget';
3
+ import type { NearEd25519YaoOperationMaterial, NearEd25519YaoOperationMaterialFacts } from '../../core/signingEngine/interfaces/near';
4
+ import type { NearEd25519MaterialIdentity, NearSigningApiDeps } from '../../core/signingEngine/interfaces/operationDeps';
5
+ import { preparePasskeyEd25519YaoLocalMaterialRehydrationV1, type Ed25519YaoLocalMaterialIdentity, type PasskeyEd25519YaoPublicLocatorObservationV1 } from '../../core/signingEngine/session/passkey/ed25519YaoLocalMaterial';
6
+ import type { WebAuthnAuthenticationCredential } from '../../core/types';
7
+ import { type MpcMaterialActivationRef } from '../../../../shared-ts/src/utils/domainIds';
8
+ import { type WalletAuthAuthorityRef } from '../../../../shared-ts/src/utils/walletAuthAuthority';
9
+ import { type ActivePasskeyWalletAuthMethodRecordV2 } from '../../../../shared-ts/src/utils/walletAuthMethodRecord';
10
+ import type { NearEd25519SignerBinding } from '../../../../shared-ts/src/utils/walletCapabilityBindings';
11
+ export declare function resolveBrowserExactPasskeyWalletAuthAuthorityRef(args: {
12
+ readonly walletId: WalletId;
13
+ readonly rpId: string;
14
+ readonly credentialIdB64u: string;
15
+ }): Promise<WalletAuthAuthorityRef | null>;
16
+ export type PasskeyEd25519MaterialAccess = {
17
+ readonly kind: 'wallet_session';
18
+ } | {
19
+ readonly kind: 'owner_operation';
20
+ readonly authMethod: ActivePasskeyWalletAuthMethodRecordV2;
21
+ readonly authority: import('../../../../shared-ts/src/authorization/walletAuthority').ActiveWalletAuthorityV1;
22
+ readonly assertCurrent: () => void;
23
+ };
24
+ export declare function preparePasskeyEd25519OperationMaterial(args: {
25
+ walletId: WalletId;
26
+ identity: NearEd25519MaterialIdentity;
27
+ relayerUrl: string;
28
+ access: PasskeyEd25519MaterialAccess;
29
+ }): Promise<{
30
+ prepared: {
31
+ kind: 'prepared';
32
+ plan: Extract<import("../../core/signingEngine/session/material/mpcCapabilityHydration").MpcCapabilityHydrationPlan, {
33
+ kind: 'rehydrate_material_activation';
34
+ }>;
35
+ };
36
+ localIdentity: Ed25519YaoLocalMaterialIdentity;
37
+ authority: WalletAuthAuthorityRef;
38
+ publicLocator: Omit<{
39
+ readonly kind: 'available';
40
+ readonly walletId: string;
41
+ readonly nearAccountId: string;
42
+ readonly signerSlot: number;
43
+ readonly materialActivation: MpcMaterialActivationRef;
44
+ readonly authority: WalletAuthAuthorityRef;
45
+ }, "authority">;
46
+ facts: NearEd25519YaoOperationMaterialFacts;
47
+ participantIds: readonly [number, number];
48
+ }>;
49
+ export declare function assertPasskeyEd25519MaterialAccess(access: PasskeyEd25519MaterialAccess, selected: Extract<ResolveSelectedWalletAuthorityResultV1, {
50
+ kind: 'resolved';
51
+ }>): void;
52
+ export declare function prepareExactPasskeyEd25519YaoLocalMaterialRehydration(input: Parameters<typeof preparePasskeyEd25519YaoLocalMaterialRehydrationV1>[0]): Promise<Awaited<ReturnType<typeof preparePasskeyEd25519YaoLocalMaterialRehydrationV1>>>;
53
+ export type PrepareNearEd25519YaoMaterialBoundaryInput = Parameters<NearSigningApiDeps['prepareNearEd25519YaoMaterialBoundary']>[0];
54
+ export declare function nearEd25519MaterialIdentityFromBoundaryInput(input: PrepareNearEd25519YaoMaterialBoundaryInput): NearEd25519MaterialIdentity;
55
+ export declare function nearEd25519SignerFromBoundaryInput(input: PrepareNearEd25519YaoMaterialBoundaryInput): NearEd25519SignerBinding;
56
+ export declare function validateExactNearEd25519YaoOperationMaterial(args: {
57
+ material: NearEd25519YaoOperationMaterial;
58
+ input: PrepareNearEd25519YaoMaterialBoundaryInput;
59
+ expectedActivation: MpcMaterialActivationRef;
60
+ }): NearEd25519YaoOperationMaterial;
61
+ export declare function rehydratePreparedPasskeyEd25519YaoOperationStepUp(prepared: {
62
+ input: PrepareNearEd25519YaoMaterialBoundaryInput;
63
+ access: PasskeyEd25519MaterialAccess;
64
+ identity: Ed25519YaoLocalMaterialIdentity;
65
+ facts: NearEd25519YaoOperationMaterialFacts;
66
+ authority: WalletAuthAuthorityRef;
67
+ rpId: string;
68
+ credentialIdB64u: string;
69
+ publicLocator: PasskeyEd25519YaoPublicLocatorObservationV1;
70
+ materialActivation: MpcMaterialActivationRef;
71
+ }, credential: WebAuthnAuthenticationCredential): Promise<NearEd25519YaoOperationMaterial>;
72
+ //# sourceMappingURL=nearPasskeyOperationMaterial.d.ts.map
@@ -6,6 +6,9 @@ import type { WorkerOperationContext } from '../../core/signingEngine/workerMana
6
6
  export type { AccountSyncSigningSurface, AccountSyncWebContext, WalletAuthWebContext, DeviceLinkingSigningSurface, DeviceLinkingWebContext, EcdsaLoginSessionSurface, EcdsaRegistrationSurface, Ed25519YaoCapabilityActivationSurface, EcdsaSessionBootstrapSurface, EcdsaSessionControlSurface, Ed25519SessionConnectionSurface, EmailOtpRegistrationEnrollmentSurface, EmailOtpSigningSessionSurface, WalletRecoverySigningSurface, WalletRecoveryWebContext, EvmFamilySigningSurface, LocalLoginStateSurface, LockSigningSurface, LoginUnlockSigningSurface, LoginWarmSigningSurface, LoginWebContext, NearSigningSurface, NearSigningWebContext, NonceCoordinatorSurface, PasskeyLoginAssertionSurface, RecentUnlocksSigningSurface, RecentUnlocksWebContext, RegistrationAccountSurface, RegistrationResourceWarmupSurface, RegistrationSigningSurface, RegistrationWebContext, RpIdSurface, RuntimeStartupSurface, SeamsWebBaseContext, SigningEngineLifecycleEventSurface, SignerWorkerContextSurface, SigningSessionSurface, TempoNonceLifecycleSurface, TempoSigningSurface, UnlockedEd25519ExportRootCapabilitySurface, UserAccountLookupSurface, UserProfileStoreSurface, WalletIframeWarmupSurface, WalletAuthenticationSurface, WalletSessionReadSurface, WalletSessionWebContext, WarmSessionStatusSurface, WebAuthnRegistrationConfirmationSurface, } from './ports';
7
7
  export type * from '../publicApi/types';
8
8
  export interface SeamsWebSigningSurface extends RpIdSurface, NonceCoordinatorSurface, WalletIframeWarmupSurface, WalletIframeSurfaceMeasurementSurface, WalletAuthenticationSurface, WalletLockGenerationSurface, RuntimeStartupSurface, SigningEngineLifecycleEventSurface, WorkerOperationContext, SigningSessionSurface, Ed25519SessionConnectionSurface, EcdsaSessionBootstrapSurface, EmailOtpSigningSessionSurface, EmailOtpRegistrationEnrollmentSurface, EcdsaLoginSessionSurface, EcdsaSessionControlSurface, SignerWorkerContextSurface, WarmSessionStatusSurface, NearSigningSurface, EvmFamilySigningSurface, TempoNonceLifecycleSurface, UserProfileStoreSurface, RegistrationResourceWarmupSurface, RegistrationAccountSurface, EcdsaRegistrationSurface, Ed25519YaoCapabilityActivationSurface, UnlockedEd25519ExportRootCapabilitySurface, WalletCustodyCeremonySurface, Ed25519MaterialOwnerQueueSurface, Pick<AccountSyncSigningSurface, 'storeNearThresholdKeyMaterial'>, WebAuthnRegistrationConfirmationSurface, EmailOtpOwnerConfirmationSurface, PasskeyLoginAssertionSurface, KeyExportSigningSurface {
9
+ signNearOwnerTransaction(command: Extract<import('../walletIframe/shared/ownerNearOperation').OwnerNearCommand, {
10
+ action: 'approve';
11
+ }>, assertCurrent: () => void, onEvent: (event: import('../../core/types/sdkSentEvents').SigningFlowEvent) => void): Promise<import('../../core/types/seams').SignTransactionResult>;
9
12
  readonly seamsWebConfigs: SeamsConfigsReadonly;
10
13
  dispose(): void;
11
14
  setAppearance(appearance: AppearanceConfig): void;