@moveindustries/ts-sdk 5.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +66 -0
- package/dist/common/accountAddress-DoqkxUqw.d.ts +7769 -0
- package/dist/common/chunk-56DGDNEY.js +4 -0
- package/dist/common/chunk-56DGDNEY.js.map +1 -0
- package/dist/common/cli/index.d.ts +316 -0
- package/dist/common/cli/index.js +2 -0
- package/dist/common/cli/index.js.map +1 -0
- package/dist/common/index.d.ts +10643 -0
- package/dist/common/index.js +482 -0
- package/dist/common/index.js.map +1 -0
- package/dist/esm/Ed25519Account-DsqenvLJ.d.mts +628 -0
- package/dist/esm/account/AbstractKeylessAccount.d.mts +336 -0
- package/dist/esm/account/AbstractKeylessAccount.mjs +2 -0
- package/dist/esm/account/AbstractKeylessAccount.mjs.map +1 -0
- package/dist/esm/account/AbstractedAccount.d.mts +64 -0
- package/dist/esm/account/AbstractedAccount.mjs +2 -0
- package/dist/esm/account/AbstractedAccount.mjs.map +1 -0
- package/dist/esm/account/Account.d.mts +8 -0
- package/dist/esm/account/Account.mjs +2 -0
- package/dist/esm/account/Account.mjs.map +1 -0
- package/dist/esm/account/AccountUtils.d.mts +38 -0
- package/dist/esm/account/AccountUtils.mjs +2 -0
- package/dist/esm/account/AccountUtils.mjs.map +1 -0
- package/dist/esm/account/DerivableAbstractedAccount.d.mts +59 -0
- package/dist/esm/account/DerivableAbstractedAccount.mjs +2 -0
- package/dist/esm/account/DerivableAbstractedAccount.mjs.map +1 -0
- package/dist/esm/account/Ed25519Account.d.mts +8 -0
- package/dist/esm/account/Ed25519Account.mjs +2 -0
- package/dist/esm/account/Ed25519Account.mjs.map +1 -0
- package/dist/esm/account/EphemeralKeyPair.d.mts +141 -0
- package/dist/esm/account/EphemeralKeyPair.mjs +2 -0
- package/dist/esm/account/EphemeralKeyPair.mjs.map +1 -0
- package/dist/esm/account/FederatedKeylessAccount.d.mts +118 -0
- package/dist/esm/account/FederatedKeylessAccount.mjs +2 -0
- package/dist/esm/account/FederatedKeylessAccount.mjs.map +1 -0
- package/dist/esm/account/KeylessAccount.d.mts +124 -0
- package/dist/esm/account/KeylessAccount.mjs +2 -0
- package/dist/esm/account/KeylessAccount.mjs.map +1 -0
- package/dist/esm/account/MultiEd25519Account.d.mts +102 -0
- package/dist/esm/account/MultiEd25519Account.mjs +2 -0
- package/dist/esm/account/MultiEd25519Account.mjs.map +1 -0
- package/dist/esm/account/MultiKeyAccount.d.mts +206 -0
- package/dist/esm/account/MultiKeyAccount.mjs +2 -0
- package/dist/esm/account/MultiKeyAccount.mjs.map +1 -0
- package/dist/esm/account/SingleKeyAccount.d.mts +8 -0
- package/dist/esm/account/SingleKeyAccount.mjs +2 -0
- package/dist/esm/account/SingleKeyAccount.mjs.map +1 -0
- package/dist/esm/account/index.d.mts +24 -0
- package/dist/esm/account/index.mjs +2 -0
- package/dist/esm/account/index.mjs.map +1 -0
- package/dist/esm/account/utils.d.mts +14 -0
- package/dist/esm/account/utils.mjs +2 -0
- package/dist/esm/account/utils.mjs.map +1 -0
- package/dist/esm/accountAddress-CNXtapt1.d.mts +6979 -0
- package/dist/esm/api/account/abstraction.d.mts +181 -0
- package/dist/esm/api/account/abstraction.mjs +2 -0
- package/dist/esm/api/account/abstraction.mjs.map +1 -0
- package/dist/esm/api/account.d.mts +852 -0
- package/dist/esm/api/account.mjs +2 -0
- package/dist/esm/api/account.mjs.map +1 -0
- package/dist/esm/api/ans.d.mts +504 -0
- package/dist/esm/api/ans.mjs +2 -0
- package/dist/esm/api/ans.mjs.map +1 -0
- package/dist/esm/api/coin.d.mts +81 -0
- package/dist/esm/api/coin.mjs +2 -0
- package/dist/esm/api/coin.mjs.map +1 -0
- package/dist/esm/api/digitalAsset.d.mts +1030 -0
- package/dist/esm/api/digitalAsset.mjs +2 -0
- package/dist/esm/api/digitalAsset.mjs.map +1 -0
- package/dist/esm/api/faucet.d.mts +80 -0
- package/dist/esm/api/faucet.mjs +2 -0
- package/dist/esm/api/faucet.mjs.map +1 -0
- package/dist/esm/api/fungibleAsset.d.mts +288 -0
- package/dist/esm/api/fungibleAsset.mjs +2 -0
- package/dist/esm/api/fungibleAsset.mjs.map +1 -0
- package/dist/esm/api/general.d.mts +303 -0
- package/dist/esm/api/general.mjs +2 -0
- package/dist/esm/api/general.mjs.map +1 -0
- package/dist/esm/api/index.d.mts +46 -0
- package/dist/esm/api/index.mjs +2 -0
- package/dist/esm/api/index.mjs.map +1 -0
- package/dist/esm/api/keyless.d.mts +170 -0
- package/dist/esm/api/keyless.mjs +2 -0
- package/dist/esm/api/keyless.mjs.map +1 -0
- package/dist/esm/api/movement.d.mts +113 -0
- package/dist/esm/api/movement.mjs +2 -0
- package/dist/esm/api/movement.mjs.map +1 -0
- package/dist/esm/api/movementConfig.d.mts +7 -0
- package/dist/esm/api/movementConfig.mjs +2 -0
- package/dist/esm/api/movementConfig.mjs.map +1 -0
- package/dist/esm/api/object.d.mts +80 -0
- package/dist/esm/api/object.mjs +2 -0
- package/dist/esm/api/object.mjs.map +1 -0
- package/dist/esm/api/staking.d.mts +134 -0
- package/dist/esm/api/staking.mjs +2 -0
- package/dist/esm/api/staking.mjs.map +1 -0
- package/dist/esm/api/table.d.mts +169 -0
- package/dist/esm/api/table.mjs +2 -0
- package/dist/esm/api/table.mjs.map +1 -0
- package/dist/esm/api/transaction.d.mts +679 -0
- package/dist/esm/api/transaction.mjs +2 -0
- package/dist/esm/api/transaction.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/build.d.mts +141 -0
- package/dist/esm/api/transactionSubmission/build.mjs +2 -0
- package/dist/esm/api/transactionSubmission/build.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/helpers.d.mts +98 -0
- package/dist/esm/api/transactionSubmission/helpers.mjs +2 -0
- package/dist/esm/api/transactionSubmission/helpers.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/management.d.mts +168 -0
- package/dist/esm/api/transactionSubmission/management.mjs +2 -0
- package/dist/esm/api/transactionSubmission/management.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/sign.d.mts +124 -0
- package/dist/esm/api/transactionSubmission/sign.mjs +2 -0
- package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/simulate.d.mts +181 -0
- package/dist/esm/api/transactionSubmission/simulate.mjs +2 -0
- package/dist/esm/api/transactionSubmission/simulate.mjs.map +1 -0
- package/dist/esm/api/transactionSubmission/submit.d.mts +142 -0
- package/dist/esm/api/transactionSubmission/submit.mjs +2 -0
- package/dist/esm/api/transactionSubmission/submit.mjs.map +1 -0
- package/dist/esm/api/utils.d.mts +45 -0
- package/dist/esm/api/utils.mjs +2 -0
- package/dist/esm/api/utils.mjs.map +1 -0
- package/dist/esm/bcs/consts.d.mts +28 -0
- package/dist/esm/bcs/consts.mjs +2 -0
- package/dist/esm/bcs/consts.mjs.map +1 -0
- package/dist/esm/bcs/deserializer.d.mts +7 -0
- package/dist/esm/bcs/deserializer.mjs +2 -0
- package/dist/esm/bcs/deserializer.mjs.map +1 -0
- package/dist/esm/bcs/index.d.mts +8 -0
- package/dist/esm/bcs/index.mjs +2 -0
- package/dist/esm/bcs/index.mjs.map +1 -0
- package/dist/esm/bcs/serializable/entryFunctionBytes.d.mts +65 -0
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs +2 -0
- package/dist/esm/bcs/serializable/entryFunctionBytes.mjs.map +1 -0
- package/dist/esm/bcs/serializable/fixedBytes.d.mts +7 -0
- package/dist/esm/bcs/serializable/fixedBytes.mjs +2 -0
- package/dist/esm/bcs/serializable/fixedBytes.mjs.map +1 -0
- package/dist/esm/bcs/serializable/movePrimitives.d.mts +7 -0
- package/dist/esm/bcs/serializable/movePrimitives.mjs +2 -0
- package/dist/esm/bcs/serializable/movePrimitives.mjs.map +1 -0
- package/dist/esm/bcs/serializable/moveStructs.d.mts +7 -0
- package/dist/esm/bcs/serializable/moveStructs.mjs +2 -0
- package/dist/esm/bcs/serializable/moveStructs.mjs.map +1 -0
- package/dist/esm/bcs/serializer.d.mts +7 -0
- package/dist/esm/bcs/serializer.mjs +2 -0
- package/dist/esm/bcs/serializer.mjs.map +1 -0
- package/dist/esm/chunk-2KDUIZKB.mjs +2 -0
- package/dist/esm/chunk-2KDUIZKB.mjs.map +1 -0
- package/dist/esm/chunk-2QTV4AOE.mjs +2 -0
- package/dist/esm/chunk-2QTV4AOE.mjs.map +1 -0
- package/dist/esm/chunk-47V7UGV5.mjs +4 -0
- package/dist/esm/chunk-47V7UGV5.mjs.map +1 -0
- package/dist/esm/chunk-4QMXOWHP.mjs +1 -0
- package/dist/esm/chunk-4QMXOWHP.mjs.map +1 -0
- package/dist/esm/chunk-4WPQQPUF.mjs +1 -0
- package/dist/esm/chunk-4WPQQPUF.mjs.map +1 -0
- package/dist/esm/chunk-5HXLZHDW.mjs +1 -0
- package/dist/esm/chunk-5HXLZHDW.mjs.map +1 -0
- package/dist/esm/chunk-5IMQPJ6J.mjs +2 -0
- package/dist/esm/chunk-5IMQPJ6J.mjs.map +1 -0
- package/dist/esm/chunk-5ZKA765G.mjs +2 -0
- package/dist/esm/chunk-5ZKA765G.mjs.map +1 -0
- package/dist/esm/chunk-6NO4QKAO.mjs +2 -0
- package/dist/esm/chunk-6NO4QKAO.mjs.map +1 -0
- package/dist/esm/chunk-7ECCT6PK.mjs +1 -0
- package/dist/esm/chunk-7ECCT6PK.mjs.map +1 -0
- package/dist/esm/chunk-7TTTMBAK.mjs +2 -0
- package/dist/esm/chunk-7TTTMBAK.mjs.map +1 -0
- package/dist/esm/chunk-A5L76YP7.mjs +2 -0
- package/dist/esm/chunk-A5L76YP7.mjs.map +1 -0
- package/dist/esm/chunk-ANTEUWH6.mjs +2 -0
- package/dist/esm/chunk-ANTEUWH6.mjs.map +1 -0
- package/dist/esm/chunk-CHWDP6AR.mjs +2 -0
- package/dist/esm/chunk-CHWDP6AR.mjs.map +1 -0
- package/dist/esm/chunk-CRCE7R4D.mjs +2 -0
- package/dist/esm/chunk-CRCE7R4D.mjs.map +1 -0
- package/dist/esm/chunk-D6HPXGEP.mjs +2 -0
- package/dist/esm/chunk-D6HPXGEP.mjs.map +1 -0
- package/dist/esm/chunk-DS6QB6HG.mjs +4 -0
- package/dist/esm/chunk-DS6QB6HG.mjs.map +1 -0
- package/dist/esm/chunk-FD6FGKYY.mjs +1 -0
- package/dist/esm/chunk-FD6FGKYY.mjs.map +1 -0
- package/dist/esm/chunk-FJRPU2NH.mjs +2 -0
- package/dist/esm/chunk-FJRPU2NH.mjs.map +1 -0
- package/dist/esm/chunk-FS5ZJKO7.mjs +2 -0
- package/dist/esm/chunk-FS5ZJKO7.mjs.map +1 -0
- package/dist/esm/chunk-FZY4PMEE.mjs +1 -0
- package/dist/esm/chunk-FZY4PMEE.mjs.map +1 -0
- package/dist/esm/chunk-G3MHXDYA.mjs +1 -0
- package/dist/esm/chunk-G3MHXDYA.mjs.map +1 -0
- package/dist/esm/chunk-GOXRBEIJ.mjs +2 -0
- package/dist/esm/chunk-GOXRBEIJ.mjs.map +1 -0
- package/dist/esm/chunk-HGLO5LDS.mjs +1 -0
- package/dist/esm/chunk-HGLO5LDS.mjs.map +1 -0
- package/dist/esm/chunk-HL2JMZ7N.mjs +2 -0
- package/dist/esm/chunk-HL2JMZ7N.mjs.map +1 -0
- package/dist/esm/chunk-I6YGBK5S.mjs +2 -0
- package/dist/esm/chunk-I6YGBK5S.mjs.map +1 -0
- package/dist/esm/chunk-K4NT6TTN.mjs +2 -0
- package/dist/esm/chunk-K4NT6TTN.mjs.map +1 -0
- package/dist/esm/chunk-KDMSOCZY.mjs +2 -0
- package/dist/esm/chunk-KDMSOCZY.mjs.map +1 -0
- package/dist/esm/chunk-KPJGWDSQ.mjs +7 -0
- package/dist/esm/chunk-KPJGWDSQ.mjs.map +1 -0
- package/dist/esm/chunk-MEWW7VTQ.mjs +2 -0
- package/dist/esm/chunk-MEWW7VTQ.mjs.map +1 -0
- package/dist/esm/chunk-NECL5FCQ.mjs +1 -0
- package/dist/esm/chunk-NECL5FCQ.mjs.map +1 -0
- package/dist/esm/chunk-NMFJJOGW.mjs +2 -0
- package/dist/esm/chunk-NMFJJOGW.mjs.map +1 -0
- package/dist/esm/chunk-NQUZ4UHR.mjs +2 -0
- package/dist/esm/chunk-NQUZ4UHR.mjs.map +1 -0
- package/dist/esm/chunk-NUB6KE73.mjs +2 -0
- package/dist/esm/chunk-NUB6KE73.mjs.map +1 -0
- package/dist/esm/chunk-OOOAVIMQ.mjs +2 -0
- package/dist/esm/chunk-OOOAVIMQ.mjs.map +1 -0
- package/dist/esm/chunk-PCESRJYO.mjs +2 -0
- package/dist/esm/chunk-PCESRJYO.mjs.map +1 -0
- package/dist/esm/chunk-PHRRBT44.mjs +2 -0
- package/dist/esm/chunk-PHRRBT44.mjs.map +1 -0
- package/dist/esm/chunk-PZ233FIY.mjs +2 -0
- package/dist/esm/chunk-PZ233FIY.mjs.map +1 -0
- package/dist/esm/chunk-R2G23RIY.mjs +2 -0
- package/dist/esm/chunk-R2G23RIY.mjs.map +1 -0
- package/dist/esm/chunk-RL4YPMN4.mjs +2 -0
- package/dist/esm/chunk-RL4YPMN4.mjs.map +1 -0
- package/dist/esm/chunk-RUIFVDWM.mjs +2 -0
- package/dist/esm/chunk-RUIFVDWM.mjs.map +1 -0
- package/dist/esm/chunk-RXHPS4IU.mjs +2 -0
- package/dist/esm/chunk-RXHPS4IU.mjs.map +1 -0
- package/dist/esm/chunk-S4D2KBYN.mjs +2 -0
- package/dist/esm/chunk-S4D2KBYN.mjs.map +1 -0
- package/dist/esm/chunk-SRXFRTHK.mjs +2 -0
- package/dist/esm/chunk-SRXFRTHK.mjs.map +1 -0
- package/dist/esm/chunk-SYXDZA4K.mjs +2 -0
- package/dist/esm/chunk-SYXDZA4K.mjs.map +1 -0
- package/dist/esm/chunk-UI4OF6CP.mjs +2 -0
- package/dist/esm/chunk-UI4OF6CP.mjs.map +1 -0
- package/dist/esm/chunk-UL777LTI.mjs +494 -0
- package/dist/esm/chunk-UL777LTI.mjs.map +1 -0
- package/dist/esm/chunk-UVP74ONT.mjs +2 -0
- package/dist/esm/chunk-UVP74ONT.mjs.map +1 -0
- package/dist/esm/chunk-UYVPNUH3.mjs +1 -0
- package/dist/esm/chunk-UYVPNUH3.mjs.map +1 -0
- package/dist/esm/chunk-V3MBJJTL.mjs +1 -0
- package/dist/esm/chunk-V3MBJJTL.mjs.map +1 -0
- package/dist/esm/chunk-V3O2SBO4.mjs +2 -0
- package/dist/esm/chunk-V3O2SBO4.mjs.map +1 -0
- package/dist/esm/chunk-VEZCMPUG.mjs +2 -0
- package/dist/esm/chunk-VEZCMPUG.mjs.map +1 -0
- package/dist/esm/chunk-VW3WBAAD.mjs +2 -0
- package/dist/esm/chunk-VW3WBAAD.mjs.map +1 -0
- package/dist/esm/chunk-WFAH73WN.mjs +2 -0
- package/dist/esm/chunk-WFAH73WN.mjs.map +1 -0
- package/dist/esm/chunk-WVDICMU4.mjs +2 -0
- package/dist/esm/chunk-WVDICMU4.mjs.map +1 -0
- package/dist/esm/chunk-XCURF77K.mjs +2 -0
- package/dist/esm/chunk-XCURF77K.mjs.map +1 -0
- package/dist/esm/chunk-Y6YW4BAZ.mjs +2 -0
- package/dist/esm/chunk-Y6YW4BAZ.mjs.map +1 -0
- package/dist/esm/chunk-YFFYA5U3.mjs +2 -0
- package/dist/esm/chunk-YFFYA5U3.mjs.map +1 -0
- package/dist/esm/chunk-YOHEYPDP.mjs +2 -0
- package/dist/esm/chunk-YOHEYPDP.mjs.map +1 -0
- package/dist/esm/chunk-ZP4DWSQA.mjs +2 -0
- package/dist/esm/chunk-ZP4DWSQA.mjs.map +1 -0
- package/dist/esm/cli/index.d.mts +10 -0
- package/dist/esm/cli/index.mjs +2 -0
- package/dist/esm/cli/index.mjs.map +1 -0
- package/dist/esm/cli/localNode.d.mts +67 -0
- package/dist/esm/cli/localNode.mjs +2 -0
- package/dist/esm/cli/localNode.mjs.map +1 -0
- package/dist/esm/cli/move.d.mts +257 -0
- package/dist/esm/cli/move.mjs +2 -0
- package/dist/esm/cli/move.mjs.map +1 -0
- package/dist/esm/client/core.d.mts +42 -0
- package/dist/esm/client/core.mjs +2 -0
- package/dist/esm/client/core.mjs.map +1 -0
- package/dist/esm/client/get.d.mts +125 -0
- package/dist/esm/client/get.mjs +2 -0
- package/dist/esm/client/get.mjs.map +1 -0
- package/dist/esm/client/index.d.mts +10 -0
- package/dist/esm/client/index.mjs +2 -0
- package/dist/esm/client/index.mjs.map +1 -0
- package/dist/esm/client/post.d.mts +158 -0
- package/dist/esm/client/post.mjs +2 -0
- package/dist/esm/client/post.mjs.map +1 -0
- package/dist/esm/core/account/index.d.mts +8 -0
- package/dist/esm/core/account/index.mjs +2 -0
- package/dist/esm/core/account/index.mjs.map +1 -0
- package/dist/esm/core/account/utils/address.d.mts +55 -0
- package/dist/esm/core/account/utils/address.mjs +2 -0
- package/dist/esm/core/account/utils/address.mjs.map +1 -0
- package/dist/esm/core/account/utils/index.d.mts +8 -0
- package/dist/esm/core/account/utils/index.mjs +2 -0
- package/dist/esm/core/account/utils/index.mjs.map +1 -0
- package/dist/esm/core/accountAddress.d.mts +7 -0
- package/dist/esm/core/accountAddress.mjs +2 -0
- package/dist/esm/core/accountAddress.mjs.map +1 -0
- package/dist/esm/core/authenticationKey.d.mts +7 -0
- package/dist/esm/core/authenticationKey.mjs +2 -0
- package/dist/esm/core/authenticationKey.mjs.map +1 -0
- package/dist/esm/core/common.d.mts +52 -0
- package/dist/esm/core/common.mjs +2 -0
- package/dist/esm/core/common.mjs.map +1 -0
- package/dist/esm/core/crypto/abstraction.d.mts +24 -0
- package/dist/esm/core/crypto/abstraction.mjs +2 -0
- package/dist/esm/core/crypto/abstraction.mjs.map +1 -0
- package/dist/esm/core/crypto/deserializationUtils.d.mts +28 -0
- package/dist/esm/core/crypto/deserializationUtils.mjs +2 -0
- package/dist/esm/core/crypto/deserializationUtils.mjs.map +1 -0
- package/dist/esm/core/crypto/ed25519.d.mts +7 -0
- package/dist/esm/core/crypto/ed25519.mjs +2 -0
- package/dist/esm/core/crypto/ed25519.mjs.map +1 -0
- package/dist/esm/core/crypto/ephemeral.d.mts +116 -0
- package/dist/esm/core/crypto/ephemeral.mjs +2 -0
- package/dist/esm/core/crypto/ephemeral.mjs.map +1 -0
- package/dist/esm/core/crypto/federatedKeyless.d.mts +13 -0
- package/dist/esm/core/crypto/federatedKeyless.mjs +2 -0
- package/dist/esm/core/crypto/federatedKeyless.mjs.map +1 -0
- package/dist/esm/core/crypto/hdKey.d.mts +95 -0
- package/dist/esm/core/crypto/hdKey.mjs +2 -0
- package/dist/esm/core/crypto/hdKey.mjs.map +1 -0
- package/dist/esm/core/crypto/index.d.mts +19 -0
- package/dist/esm/core/crypto/index.mjs +2 -0
- package/dist/esm/core/crypto/index.mjs.map +1 -0
- package/dist/esm/core/crypto/keyless.d.mts +13 -0
- package/dist/esm/core/crypto/keyless.mjs +2 -0
- package/dist/esm/core/crypto/keyless.mjs.map +1 -0
- package/dist/esm/core/crypto/multiEd25519.d.mts +7 -0
- package/dist/esm/core/crypto/multiEd25519.mjs +2 -0
- package/dist/esm/core/crypto/multiEd25519.mjs.map +1 -0
- package/dist/esm/core/crypto/multiKey.d.mts +7 -0
- package/dist/esm/core/crypto/multiKey.mjs +2 -0
- package/dist/esm/core/crypto/multiKey.mjs.map +1 -0
- package/dist/esm/core/crypto/poseidon.d.mts +59 -0
- package/dist/esm/core/crypto/poseidon.mjs +2 -0
- package/dist/esm/core/crypto/poseidon.mjs.map +1 -0
- package/dist/esm/core/crypto/privateKey.d.mts +7 -0
- package/dist/esm/core/crypto/privateKey.mjs +2 -0
- package/dist/esm/core/crypto/privateKey.mjs.map +1 -0
- package/dist/esm/core/crypto/proof.d.mts +18 -0
- package/dist/esm/core/crypto/proof.mjs +2 -0
- package/dist/esm/core/crypto/proof.mjs.map +1 -0
- package/dist/esm/core/crypto/publicKey.d.mts +7 -0
- package/dist/esm/core/crypto/publicKey.mjs +2 -0
- package/dist/esm/core/crypto/publicKey.mjs.map +1 -0
- package/dist/esm/core/crypto/secp256k1.d.mts +7 -0
- package/dist/esm/core/crypto/secp256k1.mjs +2 -0
- package/dist/esm/core/crypto/secp256k1.mjs.map +1 -0
- package/dist/esm/core/crypto/secp256r1.d.mts +306 -0
- package/dist/esm/core/crypto/secp256r1.mjs +2 -0
- package/dist/esm/core/crypto/secp256r1.mjs.map +1 -0
- package/dist/esm/core/crypto/signature.d.mts +7 -0
- package/dist/esm/core/crypto/signature.mjs +2 -0
- package/dist/esm/core/crypto/signature.mjs.map +1 -0
- package/dist/esm/core/crypto/singleKey.d.mts +7 -0
- package/dist/esm/core/crypto/singleKey.mjs +2 -0
- package/dist/esm/core/crypto/singleKey.mjs.map +1 -0
- package/dist/esm/core/crypto/types.d.mts +11 -0
- package/dist/esm/core/crypto/types.mjs +2 -0
- package/dist/esm/core/crypto/types.mjs.map +1 -0
- package/dist/esm/core/crypto/utils.d.mts +23 -0
- package/dist/esm/core/crypto/utils.mjs +2 -0
- package/dist/esm/core/crypto/utils.mjs.map +1 -0
- package/dist/esm/core/hex.d.mts +7 -0
- package/dist/esm/core/hex.mjs +2 -0
- package/dist/esm/core/hex.mjs.map +1 -0
- package/dist/esm/core/index.d.mts +20 -0
- package/dist/esm/core/index.mjs +2 -0
- package/dist/esm/core/index.mjs.map +1 -0
- package/dist/esm/errors/index.d.mts +131 -0
- package/dist/esm/errors/index.mjs +2 -0
- package/dist/esm/errors/index.mjs.map +1 -0
- package/dist/esm/federatedKeyless-D-d9d5aC.d.mts +869 -0
- package/dist/esm/index.d.mts +71 -0
- package/dist/esm/index.mjs +2 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/internal/abstraction.d.mts +27 -0
- package/dist/esm/internal/abstraction.mjs +2 -0
- package/dist/esm/internal/abstraction.mjs.map +1 -0
- package/dist/esm/internal/account.d.mts +453 -0
- package/dist/esm/internal/account.mjs +2 -0
- package/dist/esm/internal/account.mjs.map +1 -0
- package/dist/esm/internal/ans.d.mts +365 -0
- package/dist/esm/internal/ans.mjs +2 -0
- package/dist/esm/internal/ans.mjs.map +1 -0
- package/dist/esm/internal/coin.d.mts +31 -0
- package/dist/esm/internal/coin.mjs +2 -0
- package/dist/esm/internal/coin.mjs.map +1 -0
- package/dist/esm/internal/digitalAsset.d.mts +580 -0
- package/dist/esm/internal/digitalAsset.mjs +2 -0
- package/dist/esm/internal/digitalAsset.mjs.map +1 -0
- package/dist/esm/internal/faucet.d.mts +39 -0
- package/dist/esm/internal/faucet.mjs +2 -0
- package/dist/esm/internal/faucet.mjs.map +1 -0
- package/dist/esm/internal/fungibleAsset.d.mts +112 -0
- package/dist/esm/internal/fungibleAsset.mjs +2 -0
- package/dist/esm/internal/fungibleAsset.mjs.map +1 -0
- package/dist/esm/internal/general.d.mts +92 -0
- package/dist/esm/internal/general.mjs +2 -0
- package/dist/esm/internal/general.mjs.map +1 -0
- package/dist/esm/internal/keyless.d.mts +111 -0
- package/dist/esm/internal/keyless.mjs +2 -0
- package/dist/esm/internal/keyless.mjs.map +1 -0
- package/dist/esm/internal/object.d.mts +42 -0
- package/dist/esm/internal/object.mjs +2 -0
- package/dist/esm/internal/object.mjs.map +1 -0
- package/dist/esm/internal/staking.d.mts +60 -0
- package/dist/esm/internal/staking.mjs +2 -0
- package/dist/esm/internal/staking.mjs.map +1 -0
- package/dist/esm/internal/table.d.mts +66 -0
- package/dist/esm/internal/table.mjs +2 -0
- package/dist/esm/internal/table.mjs.map +1 -0
- package/dist/esm/internal/transaction.d.mts +199 -0
- package/dist/esm/internal/transaction.mjs +2 -0
- package/dist/esm/internal/transaction.mjs.map +1 -0
- package/dist/esm/internal/transactionSubmission.d.mts +165 -0
- package/dist/esm/internal/transactionSubmission.mjs +2 -0
- package/dist/esm/internal/transactionSubmission.mjs.map +1 -0
- package/dist/esm/internal/utils/index.d.mts +8 -0
- package/dist/esm/internal/utils/index.mjs +2 -0
- package/dist/esm/internal/utils/index.mjs.map +1 -0
- package/dist/esm/internal/utils/utils.d.mts +41 -0
- package/dist/esm/internal/utils/utils.mjs +2 -0
- package/dist/esm/internal/utils/utils.mjs.map +1 -0
- package/dist/esm/internal/view.d.mts +20 -0
- package/dist/esm/internal/view.mjs +2 -0
- package/dist/esm/internal/view.mjs.map +1 -0
- package/dist/esm/transactions/authenticator/account.d.mts +7 -0
- package/dist/esm/transactions/authenticator/account.mjs +2 -0
- package/dist/esm/transactions/authenticator/account.mjs.map +1 -0
- package/dist/esm/transactions/authenticator/index.d.mts +8 -0
- package/dist/esm/transactions/authenticator/index.mjs +2 -0
- package/dist/esm/transactions/authenticator/index.mjs.map +1 -0
- package/dist/esm/transactions/authenticator/transaction.d.mts +152 -0
- package/dist/esm/transactions/authenticator/transaction.mjs +2 -0
- package/dist/esm/transactions/authenticator/transaction.mjs.map +1 -0
- package/dist/esm/transactions/index.d.mts +15 -0
- package/dist/esm/transactions/index.mjs +2 -0
- package/dist/esm/transactions/index.mjs.map +1 -0
- package/dist/esm/transactions/instances/chainId.d.mts +7 -0
- package/dist/esm/transactions/instances/chainId.mjs +2 -0
- package/dist/esm/transactions/instances/chainId.mjs.map +1 -0
- package/dist/esm/transactions/instances/identifier.d.mts +7 -0
- package/dist/esm/transactions/instances/identifier.mjs +2 -0
- package/dist/esm/transactions/instances/identifier.mjs.map +1 -0
- package/dist/esm/transactions/instances/index.d.mts +10 -0
- package/dist/esm/transactions/instances/index.mjs +2 -0
- package/dist/esm/transactions/instances/index.mjs.map +1 -0
- package/dist/esm/transactions/instances/moduleId.d.mts +7 -0
- package/dist/esm/transactions/instances/moduleId.mjs +2 -0
- package/dist/esm/transactions/instances/moduleId.mjs.map +1 -0
- package/dist/esm/transactions/instances/multiAgentTransaction.d.mts +7 -0
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs +2 -0
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs.map +1 -0
- package/dist/esm/transactions/instances/rawTransaction.d.mts +7 -0
- package/dist/esm/transactions/instances/rawTransaction.mjs +2 -0
- package/dist/esm/transactions/instances/rawTransaction.mjs.map +1 -0
- package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +58 -0
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs +2 -0
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs.map +1 -0
- package/dist/esm/transactions/instances/signedTransaction.d.mts +59 -0
- package/dist/esm/transactions/instances/signedTransaction.mjs +2 -0
- package/dist/esm/transactions/instances/signedTransaction.mjs.map +1 -0
- package/dist/esm/transactions/instances/simpleTransaction.d.mts +7 -0
- package/dist/esm/transactions/instances/simpleTransaction.mjs +2 -0
- package/dist/esm/transactions/instances/simpleTransaction.mjs.map +1 -0
- package/dist/esm/transactions/instances/transactionArgument.d.mts +7 -0
- package/dist/esm/transactions/instances/transactionArgument.mjs +2 -0
- package/dist/esm/transactions/instances/transactionArgument.mjs.map +1 -0
- package/dist/esm/transactions/instances/transactionPayload.d.mts +7 -0
- package/dist/esm/transactions/instances/transactionPayload.mjs +2 -0
- package/dist/esm/transactions/instances/transactionPayload.mjs.map +1 -0
- package/dist/esm/transactions/management/accountSequenceNumber.d.mts +123 -0
- package/dist/esm/transactions/management/accountSequenceNumber.mjs +2 -0
- package/dist/esm/transactions/management/accountSequenceNumber.mjs.map +1 -0
- package/dist/esm/transactions/management/asyncQueue.d.mts +77 -0
- package/dist/esm/transactions/management/asyncQueue.mjs +2 -0
- package/dist/esm/transactions/management/asyncQueue.mjs.map +1 -0
- package/dist/esm/transactions/management/index.d.mts +12 -0
- package/dist/esm/transactions/management/index.mjs +2 -0
- package/dist/esm/transactions/management/index.mjs.map +1 -0
- package/dist/esm/transactions/management/transactionWorker.d.mts +210 -0
- package/dist/esm/transactions/management/transactionWorker.mjs +2 -0
- package/dist/esm/transactions/management/transactionWorker.mjs.map +1 -0
- package/dist/esm/transactions/transactionBuilder/helpers.d.mts +159 -0
- package/dist/esm/transactions/transactionBuilder/helpers.mjs +2 -0
- package/dist/esm/transactions/transactionBuilder/helpers.mjs.map +1 -0
- package/dist/esm/transactions/transactionBuilder/index.d.mts +11 -0
- package/dist/esm/transactions/transactionBuilder/index.mjs +2 -0
- package/dist/esm/transactions/transactionBuilder/index.mjs.map +1 -0
- package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +104 -0
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +2 -0
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs.map +1 -0
- package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +62 -0
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +2 -0
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs.map +1 -0
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +192 -0
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +2 -0
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs.map +1 -0
- package/dist/esm/transactions/typeTag/index.d.mts +7 -0
- package/dist/esm/transactions/typeTag/index.mjs +2 -0
- package/dist/esm/transactions/typeTag/index.mjs.map +1 -0
- package/dist/esm/transactions/typeTag/parser.d.mts +81 -0
- package/dist/esm/transactions/typeTag/parser.mjs +2 -0
- package/dist/esm/transactions/typeTag/parser.mjs.map +1 -0
- package/dist/esm/transactions/types.d.mts +7 -0
- package/dist/esm/transactions/types.mjs +2 -0
- package/dist/esm/transactions/types.mjs.map +1 -0
- package/dist/esm/types/abstraction.d.mts +15 -0
- package/dist/esm/types/abstraction.mjs +2 -0
- package/dist/esm/types/abstraction.mjs.map +1 -0
- package/dist/esm/types/generated/operations.d.mts +709 -0
- package/dist/esm/types/generated/operations.mjs +1 -0
- package/dist/esm/types/generated/operations.mjs.map +1 -0
- package/dist/esm/types/generated/queries.d.mts +66 -0
- package/dist/esm/types/generated/queries.mjs +2 -0
- package/dist/esm/types/generated/queries.mjs.map +1 -0
- package/dist/esm/types/generated/types.d.mts +9495 -0
- package/dist/esm/types/generated/types.mjs +2 -0
- package/dist/esm/types/generated/types.mjs.map +1 -0
- package/dist/esm/types/index.d.mts +7 -0
- package/dist/esm/types/index.mjs +2 -0
- package/dist/esm/types/index.mjs.map +1 -0
- package/dist/esm/types/indexer.d.mts +186 -0
- package/dist/esm/types/indexer.mjs +2 -0
- package/dist/esm/types/indexer.mjs.map +1 -0
- package/dist/esm/types/keyless.d.mts +102 -0
- package/dist/esm/types/keyless.mjs +1 -0
- package/dist/esm/types/keyless.mjs.map +1 -0
- package/dist/esm/types/types.d.mts +7 -0
- package/dist/esm/types/types.mjs +2 -0
- package/dist/esm/types/types.mjs.map +1 -0
- package/dist/esm/utils/apiEndpoints.d.mts +51 -0
- package/dist/esm/utils/apiEndpoints.mjs +2 -0
- package/dist/esm/utils/apiEndpoints.mjs.map +1 -0
- package/dist/esm/utils/const.d.mts +90 -0
- package/dist/esm/utils/const.mjs +2 -0
- package/dist/esm/utils/const.mjs.map +1 -0
- package/dist/esm/utils/helpers.d.mts +174 -0
- package/dist/esm/utils/helpers.mjs +2 -0
- package/dist/esm/utils/helpers.mjs.map +1 -0
- package/dist/esm/utils/index.d.mts +9 -0
- package/dist/esm/utils/index.mjs +2 -0
- package/dist/esm/utils/index.mjs.map +1 -0
- package/dist/esm/utils/memoize.d.mts +26 -0
- package/dist/esm/utils/memoize.mjs +2 -0
- package/dist/esm/utils/memoize.mjs.map +1 -0
- package/dist/esm/utils/normalizeBundle.d.mts +35 -0
- package/dist/esm/utils/normalizeBundle.mjs +2 -0
- package/dist/esm/utils/normalizeBundle.mjs.map +1 -0
- package/dist/esm/version.d.mts +8 -0
- package/dist/esm/version.mjs +2 -0
- package/dist/esm/version.mjs.map +1 -0
- package/package.json +98 -0
- package/src/account/AbstractKeylessAccount.ts +579 -0
- package/src/account/AbstractedAccount.ts +124 -0
- package/src/account/Account.ts +354 -0
- package/src/account/AccountUtils.ts +216 -0
- package/src/account/DerivableAbstractedAccount.ts +103 -0
- package/src/account/Ed25519Account.ts +210 -0
- package/src/account/EphemeralKeyPair.ts +222 -0
- package/src/account/FederatedKeylessAccount.ts +178 -0
- package/src/account/KeylessAccount.ts +179 -0
- package/src/account/MultiEd25519Account.ts +181 -0
- package/src/account/MultiKeyAccount.ts +296 -0
- package/src/account/SingleKeyAccount.ts +277 -0
- package/src/account/index.ts +12 -0
- package/src/account/utils.ts +16 -0
- package/src/api/account/abstraction.ts +239 -0
- package/src/api/account.ts +1128 -0
- package/src/api/ans.ts +550 -0
- package/src/api/coin.ts +83 -0
- package/src/api/digitalAsset.ts +1203 -0
- package/src/api/faucet.ts +94 -0
- package/src/api/fungibleAsset.ts +371 -0
- package/src/api/general.ts +351 -0
- package/src/api/index.ts +6 -0
- package/src/api/keyless.ts +227 -0
- package/src/api/movement.ts +171 -0
- package/src/api/movementConfig.ts +334 -0
- package/src/api/object.ts +90 -0
- package/src/api/staking.ts +161 -0
- package/src/api/table.ts +193 -0
- package/src/api/transaction.ts +784 -0
- package/src/api/transactionSubmission/build.ts +153 -0
- package/src/api/transactionSubmission/helpers.ts +112 -0
- package/src/api/transactionSubmission/management.ts +211 -0
- package/src/api/transactionSubmission/sign.ts +142 -0
- package/src/api/transactionSubmission/simulate.ts +192 -0
- package/src/api/transactionSubmission/submit.ts +156 -0
- package/src/api/utils.ts +48 -0
- package/src/bcs/consts.ts +28 -0
- package/src/bcs/deserializer.ts +550 -0
- package/src/bcs/index.ts +10 -0
- package/src/bcs/serializable/entryFunctionBytes.ts +92 -0
- package/src/bcs/serializable/fixedBytes.ts +107 -0
- package/src/bcs/serializable/movePrimitives.ts +564 -0
- package/src/bcs/serializable/moveStructs.ts +619 -0
- package/src/bcs/serializer.ts +641 -0
- package/src/cli/index.ts +2 -0
- package/src/cli/localNode.ts +169 -0
- package/src/cli/move.ts +474 -0
- package/src/client/core.ts +120 -0
- package/src/client/get.ts +262 -0
- package/src/client/index.ts +7 -0
- package/src/client/post.ts +245 -0
- package/src/core/account/index.ts +1 -0
- package/src/core/account/utils/address.ts +85 -0
- package/src/core/account/utils/index.ts +1 -0
- package/src/core/accountAddress.ts +524 -0
- package/src/core/authenticationKey.ts +157 -0
- package/src/core/common.ts +60 -0
- package/src/core/crypto/abstraction.ts +52 -0
- package/src/core/crypto/deserializationUtils.ts +106 -0
- package/src/core/crypto/ed25519.ts +493 -0
- package/src/core/crypto/ephemeral.ts +185 -0
- package/src/core/crypto/federatedKeyless.ts +169 -0
- package/src/core/crypto/hdKey.ts +136 -0
- package/src/core/crypto/index.ts +21 -0
- package/src/core/crypto/keyless.ts +1700 -0
- package/src/core/crypto/multiEd25519.ts +434 -0
- package/src/core/crypto/multiKey.ts +498 -0
- package/src/core/crypto/poseidon.ts +231 -0
- package/src/core/crypto/privateKey.ts +115 -0
- package/src/core/crypto/proof.ts +9 -0
- package/src/core/crypto/publicKey.ts +106 -0
- package/src/core/crypto/secp256k1.ts +451 -0
- package/src/core/crypto/secp256r1.ts +495 -0
- package/src/core/crypto/signature.ts +57 -0
- package/src/core/crypto/singleKey.ts +351 -0
- package/src/core/crypto/types.ts +9 -0
- package/src/core/crypto/utils.ts +63 -0
- package/src/core/hex.ts +241 -0
- package/src/core/index.ts +10 -0
- package/src/errors/index.ts +457 -0
- package/src/index.ts +14 -0
- package/src/internal/abstraction.ts +79 -0
- package/src/internal/account.ts +1484 -0
- package/src/internal/ans.ts +853 -0
- package/src/internal/coin.ts +49 -0
- package/src/internal/digitalAsset.ts +1291 -0
- package/src/internal/faucet.ts +71 -0
- package/src/internal/fungibleAsset.ts +233 -0
- package/src/internal/general.ts +161 -0
- package/src/internal/keyless.ts +297 -0
- package/src/internal/object.ts +68 -0
- package/src/internal/queries/TokenActivitiesFieldsFragment.graphql +17 -0
- package/src/internal/queries/ansTokenFragment.graphql +11 -0
- package/src/internal/queries/currentTokenOwnershipFieldsFragment.graphql +46 -0
- package/src/internal/queries/getAccountAddressesForAuthKey.graphql +8 -0
- package/src/internal/queries/getAccountCoinCount.graphql +7 -0
- package/src/internal/queries/getAccountCoinsData.graphql +32 -0
- package/src/internal/queries/getAccountCollectionsWithOwnedTokens.graphql +33 -0
- package/src/internal/queries/getAccountOwnedTokens.graphql +11 -0
- package/src/internal/queries/getAccountOwnedTokensByTokenData.graphql +11 -0
- package/src/internal/queries/getAccountOwnedTokensFromCollectionAddress.graphql +11 -0
- package/src/internal/queries/getAccountTokensCount.graphql +7 -0
- package/src/internal/queries/getAccountTransactionsCount.graphql +7 -0
- package/src/internal/queries/getAuthKeysForPublicKey.graphql +11 -0
- package/src/internal/queries/getChainTopUserTransactions.graphql +5 -0
- package/src/internal/queries/getCollectionData.graphql +29 -0
- package/src/internal/queries/getCurrentFungibleAssetBalances.graphql +17 -0
- package/src/internal/queries/getDelegatedStakingActivities.graphql +12 -0
- package/src/internal/queries/getEvents.graphql +13 -0
- package/src/internal/queries/getFungibleAssetActivities.graphql +20 -0
- package/src/internal/queries/getFungibleAssetMetadata.graphql +18 -0
- package/src/internal/queries/getNames.graphql +11 -0
- package/src/internal/queries/getNumberOfDelegatorsQuery.graphql +9 -0
- package/src/internal/queries/getObjectData.graphql +16 -0
- package/src/internal/queries/getProcessorStatus.graphql +7 -0
- package/src/internal/queries/getTableItemsData.graphql +15 -0
- package/src/internal/queries/getTableItemsMetadata.graphql +12 -0
- package/src/internal/queries/getTokenActivity.graphql +11 -0
- package/src/internal/queries/getTokenCurrentOwner.graphql +11 -0
- package/src/internal/queries/getTokenData.graphql +39 -0
- package/src/internal/staking.ts +96 -0
- package/src/internal/table.ts +117 -0
- package/src/internal/transaction.ts +503 -0
- package/src/internal/transactionSubmission.ts +454 -0
- package/src/internal/utils/index.ts +4 -0
- package/src/internal/utils/utils.ts +86 -0
- package/src/internal/view.ts +61 -0
- package/src/transactions/authenticator/account.ts +405 -0
- package/src/transactions/authenticator/index.ts +6 -0
- package/src/transactions/authenticator/transaction.ts +288 -0
- package/src/transactions/index.ts +10 -0
- package/src/transactions/instances/chainId.ts +53 -0
- package/src/transactions/instances/identifier.ts +54 -0
- package/src/transactions/instances/index.ts +14 -0
- package/src/transactions/instances/moduleId.ts +77 -0
- package/src/transactions/instances/multiAgentTransaction.ts +92 -0
- package/src/transactions/instances/rawTransaction.ts +256 -0
- package/src/transactions/instances/rotationProofChallenge.ts +86 -0
- package/src/transactions/instances/signedTransaction.ts +73 -0
- package/src/transactions/instances/simpleTransaction.ts +83 -0
- package/src/transactions/instances/transactionArgument.ts +79 -0
- package/src/transactions/instances/transactionPayload.ts +676 -0
- package/src/transactions/management/accountSequenceNumber.ts +226 -0
- package/src/transactions/management/asyncQueue.ts +126 -0
- package/src/transactions/management/index.ts +2 -0
- package/src/transactions/management/transactionWorker.ts +396 -0
- package/src/transactions/transactionBuilder/helpers.ts +319 -0
- package/src/transactions/transactionBuilder/index.ts +8 -0
- package/src/transactions/transactionBuilder/remoteAbi.ts +655 -0
- package/src/transactions/transactionBuilder/signingMessage.ts +111 -0
- package/src/transactions/transactionBuilder/transactionBuilder.ts +863 -0
- package/src/transactions/typeTag/index.ts +926 -0
- package/src/transactions/typeTag/parser.ts +434 -0
- package/src/transactions/types.ts +518 -0
- package/src/types/abstraction.ts +14 -0
- package/src/types/codegen.yaml +33 -0
- package/src/types/generated/operations.ts +738 -0
- package/src/types/generated/queries.ts +926 -0
- package/src/types/generated/types.ts +10421 -0
- package/src/types/index.ts +2 -0
- package/src/types/indexer.ts +240 -0
- package/src/types/keyless.ts +94 -0
- package/src/types/types.ts +1713 -0
- package/src/utils/apiEndpoints.ts +107 -0
- package/src/utils/const.ts +100 -0
- package/src/utils/helpers.ts +287 -0
- package/src/utils/index.ts +4 -0
- package/src/utils/memoize.ts +76 -0
- package/src/utils/normalizeBundle.ts +34 -0
- package/src/version.ts +9 -0
|
@@ -0,0 +1,495 @@
|
|
|
1
|
+
// Copyright © Move Industries
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
import { p256 } from "@noble/curves/nist.js";
|
|
5
|
+
import { sha3_256 } from "@noble/hashes/sha3";
|
|
6
|
+
import { Deserializer, Serializer } from "../../bcs";
|
|
7
|
+
import {
|
|
8
|
+
AnyPublicKeyVariant,
|
|
9
|
+
SigningScheme as AuthenticationKeyScheme,
|
|
10
|
+
HexInput,
|
|
11
|
+
PrivateKeyVariants,
|
|
12
|
+
} from "../../types";
|
|
13
|
+
import { AuthenticationKey } from "../authenticationKey";
|
|
14
|
+
import { Hex } from "../hex";
|
|
15
|
+
import { PrivateKey } from "./privateKey";
|
|
16
|
+
import { PublicKey, VerifySignatureAsyncArgs } from "./publicKey";
|
|
17
|
+
import { Signature } from "./signature";
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Represents a Secp256r1 ECDSA public key.
|
|
21
|
+
*
|
|
22
|
+
* @extends PublicKey
|
|
23
|
+
* @property LENGTH - The length of the Secp256r1 public key in bytes.
|
|
24
|
+
* @group Implementation
|
|
25
|
+
* @category Serialization
|
|
26
|
+
*/
|
|
27
|
+
export class Secp256r1PublicKey extends PublicKey {
|
|
28
|
+
// Secp256r1 ecdsa public keys contain a prefix indicating compression and two 32-byte coordinates.
|
|
29
|
+
static readonly LENGTH: number = 65;
|
|
30
|
+
|
|
31
|
+
// If it's compressed, it is only 33 bytes
|
|
32
|
+
static readonly COMPRESSED_LENGTH: number = 33;
|
|
33
|
+
|
|
34
|
+
// Hex value of the public key
|
|
35
|
+
private readonly key: Hex;
|
|
36
|
+
|
|
37
|
+
// Identifier to distinguish from Secp256k1PublicKey
|
|
38
|
+
public readonly keyType: string = "secp256r1";
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Create a new PublicKey instance from a HexInput, which can be a string or Uint8Array.
|
|
42
|
+
* This constructor validates the length of the provided public key data.
|
|
43
|
+
*
|
|
44
|
+
* @param hexInput - A HexInput (string or Uint8Array) representing the public key data.
|
|
45
|
+
* @throws Error if the length of the public key data is not equal to Secp256r1PublicKey.LENGTH or COMPRESSED_LENGTH.
|
|
46
|
+
* @group Implementation
|
|
47
|
+
* @category Serialization
|
|
48
|
+
*/
|
|
49
|
+
constructor(hexInput: HexInput) {
|
|
50
|
+
super();
|
|
51
|
+
|
|
52
|
+
const hex = Hex.fromHexInput(hexInput);
|
|
53
|
+
const keyLength = hex.toUint8Array().length;
|
|
54
|
+
if (keyLength !== Secp256r1PublicKey.LENGTH && keyLength !== Secp256r1PublicKey.COMPRESSED_LENGTH) {
|
|
55
|
+
throw new Error(
|
|
56
|
+
`PublicKey length should be ${Secp256r1PublicKey.LENGTH} or ${Secp256r1PublicKey.COMPRESSED_LENGTH}, received ${keyLength}`,
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
if (keyLength === Secp256r1PublicKey.COMPRESSED_LENGTH) {
|
|
61
|
+
const point = p256.ProjectivePoint.fromHex(hex.toUint8Array());
|
|
62
|
+
this.key = Hex.fromHexInput(point.toRawBytes(false));
|
|
63
|
+
} else {
|
|
64
|
+
this.key = hex;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Get the data as a Uint8Array representation.
|
|
70
|
+
*
|
|
71
|
+
* @returns Uint8Array representation of the data.
|
|
72
|
+
* @group Implementation
|
|
73
|
+
* @category Serialization
|
|
74
|
+
*/
|
|
75
|
+
toUint8Array(): Uint8Array {
|
|
76
|
+
return this.key.toUint8Array();
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Get the public key as a hex string with the 0x prefix.
|
|
81
|
+
*
|
|
82
|
+
* @returns string representation of the public key.
|
|
83
|
+
* @group Implementation
|
|
84
|
+
* @category Serialization
|
|
85
|
+
*/
|
|
86
|
+
toString(): string {
|
|
87
|
+
return this.key.toString();
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* Converts the public key to BCS (Binary Canonical Serialization) bytes.
|
|
92
|
+
* This function serializes the public key data into a byte array format suitable for transmission or storage.
|
|
93
|
+
*
|
|
94
|
+
* @returns Uint8Array representation of the serialized public key.
|
|
95
|
+
* @group Implementation
|
|
96
|
+
* @category Serialization
|
|
97
|
+
*/
|
|
98
|
+
bcsToBytes() {
|
|
99
|
+
const serializer = new Serializer();
|
|
100
|
+
this.serialize(serializer);
|
|
101
|
+
return serializer.toUint8Array();
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Verifies a Secp256r1 signature against the public key.
|
|
106
|
+
*
|
|
107
|
+
* This function checks the validity of a signature for a given message.
|
|
108
|
+
*
|
|
109
|
+
* @param args - The arguments for verifying the signature.
|
|
110
|
+
* @param args.message - The message that was signed.
|
|
111
|
+
* @param args.signature - The signature to verify against the public key.
|
|
112
|
+
* @group Implementation
|
|
113
|
+
* @category Serialization
|
|
114
|
+
*/
|
|
115
|
+
verifySignature(args: { message: HexInput; signature: Signature }): boolean {
|
|
116
|
+
const { message, signature } = args;
|
|
117
|
+
|
|
118
|
+
const msgHex = Hex.fromHexInput(message).toUint8Array();
|
|
119
|
+
const sha3Message = sha3_256(msgHex);
|
|
120
|
+
const rawSignature = signature.toUint8Array();
|
|
121
|
+
|
|
122
|
+
return p256.verify(rawSignature, sha3Message, this.toUint8Array());
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Note: Secp256r1Signatures can be verified synchronously.
|
|
127
|
+
*
|
|
128
|
+
* Verifies the provided signature against the given message.
|
|
129
|
+
* This function helps ensure the integrity and authenticity of the message by confirming that the signature is valid.
|
|
130
|
+
*
|
|
131
|
+
* @param args - The arguments for signature verification.
|
|
132
|
+
* @param args.message - The message that was signed.
|
|
133
|
+
* @param args.signature - The signature to verify, which must be an instance of Secp256r1Signature.
|
|
134
|
+
* @returns A boolean indicating whether the signature is valid for the given message.
|
|
135
|
+
* @group Implementation
|
|
136
|
+
* @category Serialization
|
|
137
|
+
*/
|
|
138
|
+
async verifySignatureAsync(args: VerifySignatureAsyncArgs): Promise<boolean> {
|
|
139
|
+
return this.verifySignature({ message: args.message, signature: args.signature });
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Serializes the data into a byte array using the provided serializer.
|
|
144
|
+
* This function is essential for converting data into a format suitable for transmission or storage.
|
|
145
|
+
*
|
|
146
|
+
* @param serializer - The serializer instance used to convert the data.
|
|
147
|
+
* @group Implementation
|
|
148
|
+
* @category Serialization
|
|
149
|
+
*/
|
|
150
|
+
serialize(serializer: Serializer): void {
|
|
151
|
+
serializer.serializeBytes(this.key.toUint8Array());
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Deserializes a Secp256r1PublicKey from the provided deserializer.
|
|
156
|
+
* This function allows you to reconstruct a Secp256r1PublicKey object from its serialized byte representation.
|
|
157
|
+
*
|
|
158
|
+
* @param deserializer - The deserializer instance used to read the serialized data.
|
|
159
|
+
* @group Implementation
|
|
160
|
+
* @category Serialization
|
|
161
|
+
*/
|
|
162
|
+
static deserialize(deserializer: Deserializer): Secp256r1PublicKey {
|
|
163
|
+
const bytes = deserializer.deserializeBytes();
|
|
164
|
+
return new Secp256r1PublicKey(bytes);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* Loads a Secp256r1PublicKey from the provided deserializer.
|
|
169
|
+
*
|
|
170
|
+
* @param deserializer - The deserializer instance used to read the serialized data.
|
|
171
|
+
* @group Implementation
|
|
172
|
+
* @category Serialization
|
|
173
|
+
*/
|
|
174
|
+
static load(deserializer: Deserializer): Secp256r1PublicKey {
|
|
175
|
+
const bytes = deserializer.deserializeBytes();
|
|
176
|
+
return new Secp256r1PublicKey(bytes);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Determines if the provided public key is a valid instance of a Secp256r1 public key.
|
|
181
|
+
* This function checks for the presence of a "key" property and validates the length of the key data.
|
|
182
|
+
*
|
|
183
|
+
* @param publicKey - The public key to validate.
|
|
184
|
+
* @returns A boolean indicating whether the public key is a valid Secp256r1 public key.
|
|
185
|
+
* @group Implementation
|
|
186
|
+
* @category Serialization
|
|
187
|
+
*/
|
|
188
|
+
static isInstance(publicKey: PublicKey): publicKey is Secp256r1PublicKey {
|
|
189
|
+
return (
|
|
190
|
+
"key" in publicKey &&
|
|
191
|
+
(publicKey.key as any)?.data?.length === Secp256r1PublicKey.LENGTH &&
|
|
192
|
+
"keyType" in publicKey &&
|
|
193
|
+
(publicKey as any).keyType === "secp256r1"
|
|
194
|
+
);
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Generates an authentication key from the public key using the Secp256r1 scheme.
|
|
199
|
+
* This function is essential for creating a secure authentication key that can be used for further cryptographic operations.
|
|
200
|
+
*
|
|
201
|
+
* @returns {AuthenticationKey} The generated authentication key.
|
|
202
|
+
* @group Implementation
|
|
203
|
+
* @category Serialization
|
|
204
|
+
*/
|
|
205
|
+
authKey(): AuthenticationKey {
|
|
206
|
+
const serializer = new Serializer();
|
|
207
|
+
serializer.serializeU32AsUleb128(AnyPublicKeyVariant.Secp256r1);
|
|
208
|
+
serializer.serializeFixedBytes(this.bcsToBytes());
|
|
209
|
+
return AuthenticationKey.fromSchemeAndBytes({
|
|
210
|
+
scheme: AuthenticationKeyScheme.SingleKey,
|
|
211
|
+
input: serializer.toUint8Array(),
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
* Represents a Secp256r1 ECDSA private key, providing functionality to create, sign messages,
|
|
218
|
+
* derive public keys, and serialize/deserialize the key.
|
|
219
|
+
* @group Implementation
|
|
220
|
+
* @category Serialization
|
|
221
|
+
*/
|
|
222
|
+
export class Secp256r1PrivateKey extends PrivateKey {
|
|
223
|
+
/**
|
|
224
|
+
* Length of Secp256r1 ecdsa private key
|
|
225
|
+
* @group Implementation
|
|
226
|
+
* @category Serialization
|
|
227
|
+
*/
|
|
228
|
+
static readonly LENGTH: number = 32;
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* The private key bytes
|
|
232
|
+
* @private
|
|
233
|
+
* @group Implementation
|
|
234
|
+
* @category Serialization
|
|
235
|
+
*/
|
|
236
|
+
private readonly key: Hex;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Create a new PrivateKey instance from a Uint8Array or String.
|
|
240
|
+
*
|
|
241
|
+
* [Read about AIP-80](https://github.com/aptos-foundation/AIPs/blob/main/aips/aip-80.md)
|
|
242
|
+
*
|
|
243
|
+
* @param hexInput A HexInput (string or Uint8Array)
|
|
244
|
+
* @param strict If true, private key must AIP-80 compliant.
|
|
245
|
+
* @group Implementation
|
|
246
|
+
* @category Serialization
|
|
247
|
+
*/
|
|
248
|
+
constructor(hexInput: HexInput, strict?: boolean) {
|
|
249
|
+
super();
|
|
250
|
+
|
|
251
|
+
const privateKeyHex = PrivateKey.parseHexInput(hexInput, PrivateKeyVariants.Secp256r1, strict);
|
|
252
|
+
const keyLength = privateKeyHex.toUint8Array().length;
|
|
253
|
+
if (keyLength !== Secp256r1PrivateKey.LENGTH) {
|
|
254
|
+
throw new Error(`PrivateKey length should be ${Secp256r1PrivateKey.LENGTH}, received ${keyLength}`);
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
this.key = privateKeyHex;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
* Get the private key in bytes (Uint8Array).
|
|
262
|
+
*
|
|
263
|
+
* @returns
|
|
264
|
+
* @group Implementation
|
|
265
|
+
* @category Serialization
|
|
266
|
+
*/
|
|
267
|
+
toUint8Array(): Uint8Array {
|
|
268
|
+
return this.key.toUint8Array();
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* Get the private key as a string representation.
|
|
273
|
+
*
|
|
274
|
+
* @returns string representation of the private key
|
|
275
|
+
* @group Implementation
|
|
276
|
+
* @category Serialization
|
|
277
|
+
*/
|
|
278
|
+
toString(): string {
|
|
279
|
+
return PrivateKey.formatPrivateKey(this.key.toString(), PrivateKeyVariants.Secp256r1);
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* Get the private key as a hex string with the 0x prefix.
|
|
284
|
+
*
|
|
285
|
+
* @returns string representation of the private key.
|
|
286
|
+
*/
|
|
287
|
+
toHexString(): string {
|
|
288
|
+
return this.key.toString();
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
/**
|
|
292
|
+
* Sign the given message with the private key.
|
|
293
|
+
* This function generates a cryptographic signature for the provided message.
|
|
294
|
+
*
|
|
295
|
+
* @param message - A message in HexInput format to be signed.
|
|
296
|
+
* @returns Signature - The generated signature for the provided message.
|
|
297
|
+
* @group Implementation
|
|
298
|
+
* @category Serialization
|
|
299
|
+
*/
|
|
300
|
+
sign(message: HexInput): Secp256r1Signature {
|
|
301
|
+
const msgHex = Hex.fromHexInput(message);
|
|
302
|
+
const sha3Message = sha3_256(msgHex.toUint8Array());
|
|
303
|
+
const signature = p256.sign(sha3Message, this.key.toUint8Array());
|
|
304
|
+
return new Secp256r1Signature(signature.toCompactRawBytes());
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
/**
|
|
308
|
+
* Serializes the data into a byte array using the provided serializer.
|
|
309
|
+
* This function is essential for converting data into a format suitable for transmission or storage.
|
|
310
|
+
*
|
|
311
|
+
* @param serializer - The serializer instance used to convert the data.
|
|
312
|
+
* @group Implementation
|
|
313
|
+
* @category Serialization
|
|
314
|
+
*/
|
|
315
|
+
serialize(serializer: Serializer): void {
|
|
316
|
+
serializer.serializeBytes(this.toUint8Array());
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Deserializes a Secp256r1PrivateKey from the provided deserializer.
|
|
321
|
+
* This function allows you to reconstruct a Secp256r1PrivateKey object from its serialized byte representation.
|
|
322
|
+
*
|
|
323
|
+
* @param deserializer - The deserializer instance used to read the serialized data.
|
|
324
|
+
* @group Implementation
|
|
325
|
+
* @category Serialization
|
|
326
|
+
*/
|
|
327
|
+
static deserialize(deserializer: Deserializer): Secp256r1PrivateKey {
|
|
328
|
+
const bytes = deserializer.deserializeBytes();
|
|
329
|
+
return new Secp256r1PrivateKey(bytes);
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* Generate a new random private key.
|
|
334
|
+
*
|
|
335
|
+
* @returns Secp256r1PrivateKey - A newly generated Secp256r1 private key.
|
|
336
|
+
* @group Implementation
|
|
337
|
+
* @category Serialization
|
|
338
|
+
*/
|
|
339
|
+
static generate(): Secp256r1PrivateKey {
|
|
340
|
+
const hexInput = p256.utils.randomPrivateKey();
|
|
341
|
+
return new Secp256r1PrivateKey(hexInput);
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* Derive the Secp256r1PublicKey from this private key.
|
|
346
|
+
*
|
|
347
|
+
* @returns Secp256r1PublicKey The derived public key.
|
|
348
|
+
* @group Implementation
|
|
349
|
+
* @category Serialization
|
|
350
|
+
*/
|
|
351
|
+
publicKey(): Secp256r1PublicKey {
|
|
352
|
+
const bytes = p256.getPublicKey(this.key.toUint8Array(), false);
|
|
353
|
+
return new Secp256r1PublicKey(bytes);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
export class WebAuthnSignature extends Signature {
|
|
358
|
+
signature: Hex;
|
|
359
|
+
|
|
360
|
+
authenticatorData: Hex;
|
|
361
|
+
|
|
362
|
+
clientDataJSON: Hex;
|
|
363
|
+
|
|
364
|
+
constructor(signature: HexInput, authenticatorData: HexInput, clientDataJSON: HexInput) {
|
|
365
|
+
super();
|
|
366
|
+
this.signature = Hex.fromHexInput(signature);
|
|
367
|
+
this.authenticatorData = Hex.fromHexInput(authenticatorData);
|
|
368
|
+
this.clientDataJSON = Hex.fromHexInput(clientDataJSON);
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
toUint8Array() {
|
|
372
|
+
return this.signature.toUint8Array();
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
serialize(serializer: Serializer) {
|
|
376
|
+
serializer.serializeU32AsUleb128(0);
|
|
377
|
+
serializer.serializeBytes(this.signature.toUint8Array());
|
|
378
|
+
serializer.serializeBytes(this.authenticatorData.toUint8Array());
|
|
379
|
+
serializer.serializeBytes(this.clientDataJSON.toUint8Array());
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
bcsToBytes() {
|
|
383
|
+
const serializer = new Serializer();
|
|
384
|
+
this.serialize(serializer);
|
|
385
|
+
return serializer.toUint8Array();
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
bcsToHex() {
|
|
389
|
+
return Hex.fromHexInput(this.bcsToBytes());
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
toStringWithoutPrefix() {
|
|
393
|
+
return Hex.fromHexInput(this.bcsToBytes()).toString();
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
static deserialize(deserializer: Deserializer) {
|
|
397
|
+
const id = deserializer.deserializeUleb128AsU32();
|
|
398
|
+
if (id !== 0) {
|
|
399
|
+
throw new Error(`Invalid id for WebAuthnSignature: ${id}`);
|
|
400
|
+
}
|
|
401
|
+
const signature = deserializer.deserializeBytes();
|
|
402
|
+
const authenticatorData = deserializer.deserializeBytes();
|
|
403
|
+
const clientDataJSON = deserializer.deserializeBytes();
|
|
404
|
+
return new WebAuthnSignature(signature, authenticatorData, clientDataJSON);
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
/**
|
|
409
|
+
* Represents a signature of a message signed using a Secp256r1 ECDSA private key.
|
|
410
|
+
*
|
|
411
|
+
* @group Implementation
|
|
412
|
+
* @category Serialization
|
|
413
|
+
*/
|
|
414
|
+
export class Secp256r1Signature extends Signature {
|
|
415
|
+
/**
|
|
416
|
+
* Secp256r1 ecdsa signatures are 256-bit.
|
|
417
|
+
* @group Implementation
|
|
418
|
+
* @category Serialization
|
|
419
|
+
*/
|
|
420
|
+
static readonly LENGTH = 64;
|
|
421
|
+
|
|
422
|
+
/**
|
|
423
|
+
* The signature bytes
|
|
424
|
+
* @private
|
|
425
|
+
* @group Implementation
|
|
426
|
+
* @category Serialization
|
|
427
|
+
*/
|
|
428
|
+
private readonly data: Hex;
|
|
429
|
+
|
|
430
|
+
/**
|
|
431
|
+
* Create a new Signature instance from a Uint8Array or String.
|
|
432
|
+
*
|
|
433
|
+
* @param hexInput A HexInput (string or Uint8Array)
|
|
434
|
+
* @group Implementation
|
|
435
|
+
* @category Serialization
|
|
436
|
+
*/
|
|
437
|
+
constructor(hexInput: HexInput) {
|
|
438
|
+
super();
|
|
439
|
+
|
|
440
|
+
const hex = Hex.fromHexInput(hexInput);
|
|
441
|
+
const signatureLength = hex.toUint8Array().length;
|
|
442
|
+
if (signatureLength !== Secp256r1Signature.LENGTH) {
|
|
443
|
+
throw new Error(`Signature length should be ${Secp256r1Signature.LENGTH}, received ${signatureLength}`);
|
|
444
|
+
}
|
|
445
|
+
const signature = p256.Signature.fromCompact(hex.toUint8Array()).normalizeS().toCompactRawBytes();
|
|
446
|
+
this.data = Hex.fromHexInput(signature);
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
/**
|
|
450
|
+
* Get the signature in bytes (Uint8Array).
|
|
451
|
+
*
|
|
452
|
+
* @returns Uint8Array representation of the signature
|
|
453
|
+
* @group Implementation
|
|
454
|
+
* @category Serialization
|
|
455
|
+
*/
|
|
456
|
+
toUint8Array(): Uint8Array {
|
|
457
|
+
return this.data.toUint8Array();
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
/**
|
|
461
|
+
* Get the signature as a hex string with the 0x prefix.
|
|
462
|
+
*
|
|
463
|
+
* @returns string representation of the signature
|
|
464
|
+
* @group Implementation
|
|
465
|
+
* @category Serialization
|
|
466
|
+
*/
|
|
467
|
+
toString(): string {
|
|
468
|
+
return this.data.toString();
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
/**
|
|
472
|
+
* Serializes the data into a byte array using the provided serializer.
|
|
473
|
+
* This function is essential for converting data into a format suitable for transmission or storage.
|
|
474
|
+
*
|
|
475
|
+
* @param serializer - The serializer instance used to convert the data.
|
|
476
|
+
* @group Implementation
|
|
477
|
+
* @category Serialization
|
|
478
|
+
*/
|
|
479
|
+
serialize(serializer: Serializer): void {
|
|
480
|
+
serializer.serializeBytes(this.data.toUint8Array());
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
/**
|
|
484
|
+
* Deserializes a Secp256r1Signature from the provided deserializer.
|
|
485
|
+
* This function allows you to reconstruct a Secp256r1Signature object from its serialized byte representation.
|
|
486
|
+
*
|
|
487
|
+
* @param deserializer - The deserializer instance used to read the serialized data.
|
|
488
|
+
* @group Implementation
|
|
489
|
+
* @category Serialization
|
|
490
|
+
*/
|
|
491
|
+
static deserialize(deserializer: Deserializer): Secp256r1Signature {
|
|
492
|
+
const hex = deserializer.deserializeBytes();
|
|
493
|
+
return new Secp256r1Signature(hex);
|
|
494
|
+
}
|
|
495
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Serializable } from "../../bcs";
|
|
2
|
+
import { Hex } from "../hex";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* An abstract representation of a crypto signature,
|
|
6
|
+
* associated with a specific signature scheme, e.g., Ed25519 or Secp256k1.
|
|
7
|
+
*
|
|
8
|
+
* This class represents the product of signing a message directly from a
|
|
9
|
+
* PrivateKey and can be verified against a CryptoPublicKey.
|
|
10
|
+
* @group Implementation
|
|
11
|
+
* @category Serialization
|
|
12
|
+
*/
|
|
13
|
+
export abstract class Signature extends Serializable {
|
|
14
|
+
/**
|
|
15
|
+
* Get the raw signature bytes
|
|
16
|
+
* @group Implementation
|
|
17
|
+
* @category Serialization
|
|
18
|
+
*/
|
|
19
|
+
toUint8Array(): Uint8Array {
|
|
20
|
+
return this.bcsToBytes();
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Get the signature as a hex string with a 0x prefix e.g. 0x123456...
|
|
25
|
+
* @returns The hex string representation of the signature.
|
|
26
|
+
* @group Implementation
|
|
27
|
+
* @category Serialization
|
|
28
|
+
*/
|
|
29
|
+
toString(): string {
|
|
30
|
+
const bytes = this.toUint8Array();
|
|
31
|
+
return Hex.fromHexInput(bytes).toString();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* An abstract representation of an account signature,
|
|
37
|
+
* associated to a specific authentication scheme e.g. Ed25519 or SingleKey
|
|
38
|
+
*
|
|
39
|
+
* This is the product of signing a message through an account,
|
|
40
|
+
* and can be verified against an AccountPublicKey.
|
|
41
|
+
* @group Implementation
|
|
42
|
+
* @category Serialization
|
|
43
|
+
*/
|
|
44
|
+
// export abstract class AccountSignature extends Serializable {
|
|
45
|
+
// /**
|
|
46
|
+
// * Get the raw signature bytes
|
|
47
|
+
// */
|
|
48
|
+
// abstract toUint8Array(): Uint8Array;
|
|
49
|
+
//
|
|
50
|
+
// /**
|
|
51
|
+
// * Get the signature as a hex string with a 0x prefix e.g. 0x123456...
|
|
52
|
+
// */
|
|
53
|
+
// toString(): string {
|
|
54
|
+
// const bytes = this.toUint8Array();
|
|
55
|
+
// return Hex.fromHexInput(bytes).toString();
|
|
56
|
+
// }
|
|
57
|
+
// }
|