@initia/initia.js 1.0.20 → 2.0.0-rc.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.
- package/README.md +232 -154
- package/dist/abi-helpers-DdwdqhMQ.mjs +51 -0
- package/dist/abi-helpers-DdwdqhMQ.mjs.map +1 -0
- package/dist/address-DwAkzgJk.mjs +156 -0
- package/dist/address-DwAkzgJk.mjs.map +1 -0
- package/dist/address-profile-DjdaEBxo.d.mts +112 -0
- package/dist/address-profile-DlAFvgdg.mjs +241 -0
- package/dist/address-profile-DlAFvgdg.mjs.map +1 -0
- package/dist/amino-CMQN7Frn.mjs +220 -0
- package/dist/amino-CMQN7Frn.mjs.map +1 -0
- package/dist/amino_pb-Bi6YDY_U.mjs +88 -0
- package/dist/amino_pb-Bi6YDY_U.mjs.map +1 -0
- package/dist/amount-B0J9TTNF.mjs +90 -0
- package/dist/amount-B0J9TTNF.mjs.map +1 -0
- package/dist/any-DElm7qF7.mjs +19 -0
- package/dist/any-DElm7qF7.mjs.map +1 -0
- package/dist/auth_pb-DN4URGLh.mjs +26 -0
- package/dist/auth_pb-DN4URGLh.mjs.map +1 -0
- package/dist/auth_pb-DfXfdvrY.mjs +16 -0
- package/dist/auth_pb-DfXfdvrY.mjs.map +1 -0
- package/dist/base-provider-CLnd7kte.d.mts +68 -0
- package/dist/base-provider-LNp6K7Mt.mjs +96 -0
- package/dist/base-provider-LNp6K7Mt.mjs.map +1 -0
- package/dist/bcs-DiRcL4n9.mjs +533 -0
- package/dist/bcs-DiRcL4n9.mjs.map +1 -0
- package/dist/bridge-DL-q-7P7.mjs +1222 -0
- package/dist/bridge-DL-q-7P7.mjs.map +1 -0
- package/dist/bridge-cQoOjppA.d.mts +606 -0
- package/dist/broadcast-De8MdmYa.mjs +974 -0
- package/dist/broadcast-De8MdmYa.mjs.map +1 -0
- package/dist/chain-utils-C61cU5nd.mjs +139 -0
- package/dist/chain-utils-C61cU5nd.mjs.map +1 -0
- package/dist/codegen/cli.d.mts +1 -0
- package/dist/codegen/cli.mjs +274 -0
- package/dist/codegen/cli.mjs.map +1 -0
- package/dist/coin-DPWbtAFA.mjs +543 -0
- package/dist/coin-DPWbtAFA.mjs.map +1 -0
- package/dist/coin_pb--WuIu4sX.mjs +25 -0
- package/dist/coin_pb--WuIu4sX.mjs.map +1 -0
- package/dist/composite-provider-DbxNrdny.mjs +203 -0
- package/dist/composite-provider-DbxNrdny.mjs.map +1 -0
- package/dist/constants-W6V0E-3W.mjs +42 -0
- package/dist/constants-W6V0E-3W.mjs.map +1 -0
- package/dist/contract-Dpvu4wLO.mjs +657 -0
- package/dist/contract-Dpvu4wLO.mjs.map +1 -0
- package/dist/cosmos-Bqh8qNfP.mjs +540 -0
- package/dist/cosmos-Bqh8qNfP.mjs.map +1 -0
- package/dist/cosmos-registry-provider-DCrEEhJ-.d.mts +123 -0
- package/dist/cw20-BTpdgMXC.mjs +63 -0
- package/dist/cw20-BTpdgMXC.mjs.map +1 -0
- package/dist/decode-CXGawqIZ.mjs +29 -0
- package/dist/decode-CXGawqIZ.mjs.map +1 -0
- package/dist/entry.bridge.browser.d.mts +21 -0
- package/dist/entry.bridge.browser.mjs +25 -0
- package/dist/entry.bridge.browser.mjs.map +1 -0
- package/dist/entry.bridge.node.d.mts +21 -0
- package/dist/entry.bridge.node.mjs +25 -0
- package/dist/entry.bridge.node.mjs.map +1 -0
- package/dist/entry.browser.d.mts +49 -0
- package/dist/entry.browser.mjs +46 -0
- package/dist/entry.browser.mjs.map +1 -0
- package/dist/entry.chain.initia.browser.d.mts +8 -0
- package/dist/entry.chain.initia.browser.mjs +17 -0
- package/dist/entry.chain.initia.browser.mjs.map +1 -0
- package/dist/entry.chain.initia.node.d.mts +8 -0
- package/dist/entry.chain.initia.node.mjs +17 -0
- package/dist/entry.chain.initia.node.mjs.map +1 -0
- package/dist/entry.chain.minievm.browser.d.mts +8 -0
- package/dist/entry.chain.minievm.browser.mjs +17 -0
- package/dist/entry.chain.minievm.browser.mjs.map +1 -0
- package/dist/entry.chain.minievm.node.d.mts +8 -0
- package/dist/entry.chain.minievm.node.mjs +17 -0
- package/dist/entry.chain.minievm.node.mjs.map +1 -0
- package/dist/entry.chain.minimove.browser.d.mts +8 -0
- package/dist/entry.chain.minimove.browser.mjs +17 -0
- package/dist/entry.chain.minimove.browser.mjs.map +1 -0
- package/dist/entry.chain.minimove.node.d.mts +8 -0
- package/dist/entry.chain.minimove.node.mjs +17 -0
- package/dist/entry.chain.minimove.node.mjs.map +1 -0
- package/dist/entry.chain.miniwasm.browser.d.mts +8 -0
- package/dist/entry.chain.miniwasm.browser.mjs +17 -0
- package/dist/entry.chain.miniwasm.browser.mjs.map +1 -0
- package/dist/entry.chain.miniwasm.node.d.mts +8 -0
- package/dist/entry.chain.miniwasm.node.mjs +17 -0
- package/dist/entry.chain.miniwasm.node.mjs.map +1 -0
- package/dist/entry.client.browser-CQsfUmx1.d.mts +1 -0
- package/dist/entry.client.browser.d.mts +3 -0
- package/dist/entry.client.browser.mjs +6 -0
- package/dist/entry.client.node.d.mts +3 -0
- package/dist/entry.client.node.mjs +6 -0
- package/dist/entry.codegen.d.mts +251 -0
- package/dist/entry.codegen.mjs +2 -0
- package/dist/entry.cosmos.d.mts +2 -0
- package/dist/entry.cosmos.mjs +355 -0
- package/dist/entry.cosmos.mjs.map +1 -0
- package/dist/entry.events.d.mts +338 -0
- package/dist/entry.events.mjs +383 -0
- package/dist/entry.events.mjs.map +1 -0
- package/dist/entry.evm.d.mts +544 -0
- package/dist/entry.evm.mjs +761 -0
- package/dist/entry.evm.mjs.map +1 -0
- package/dist/entry.modules.d.mts +2 -0
- package/dist/entry.modules.mjs +7 -0
- package/dist/entry.move.d.mts +523 -0
- package/dist/entry.move.mjs +7 -0
- package/dist/entry.msgs.d.mts +2 -0
- package/dist/entry.msgs.mjs +3 -0
- package/dist/entry.node.d.mts +118 -0
- package/dist/entry.node.mjs +278 -0
- package/dist/entry.node.mjs.map +1 -0
- package/dist/entry.provider.d.mts +355 -0
- package/dist/entry.provider.mjs +416 -0
- package/dist/entry.provider.mjs.map +1 -0
- package/dist/entry.signer.d.mts +2 -0
- package/dist/entry.signer.mjs +674 -0
- package/dist/entry.signer.mjs.map +1 -0
- package/dist/entry.tx.d.mts +2 -0
- package/dist/entry.tx.mjs +6 -0
- package/dist/entry.usernames.d.mts +42 -0
- package/dist/entry.usernames.mjs +2 -0
- package/dist/entry.util.d.mts +103 -0
- package/dist/entry.util.mjs +70 -0
- package/dist/entry.util.mjs.map +1 -0
- package/dist/entry.vip.d.mts +1917 -0
- package/dist/entry.vip.mjs +3793 -0
- package/dist/entry.vip.mjs.map +1 -0
- package/dist/entry.wasm.d.mts +447 -0
- package/dist/entry.wasm.mjs +600 -0
- package/dist/entry.wasm.mjs.map +1 -0
- package/dist/erc20-CDs3j7vt.mjs +168 -0
- package/dist/erc20-CDs3j7vt.mjs.map +1 -0
- package/dist/errors-CN1MFOLv.mjs +253 -0
- package/dist/errors-CN1MFOLv.mjs.map +1 -0
- package/dist/evm-rpc-BxpgXIAF.mjs +338 -0
- package/dist/evm-rpc-BxpgXIAF.mjs.map +1 -0
- package/dist/fetch-Bq_aay6V.mjs +55 -0
- package/dist/fetch-Bq_aay6V.mjs.map +1 -0
- package/dist/fungible-asset-aHBTYpoT.mjs +64 -0
- package/dist/fungible-asset-aHBTYpoT.mjs.map +1 -0
- package/dist/get-tx-0P40z_A4.mjs +99 -0
- package/dist/get-tx-0P40z_A4.mjs.map +1 -0
- package/dist/grpc-client-DGyZjGcT.mjs +254 -0
- package/dist/grpc-client-DGyZjGcT.mjs.map +1 -0
- package/dist/hash-D40mxOlF.mjs +14 -0
- package/dist/hash-D40mxOlF.mjs.map +1 -0
- package/dist/hash-Doo89wm3.d.mts +31 -0
- package/dist/headers-CMO7ia_D.mjs +83 -0
- package/dist/headers-CMO7ia_D.mjs.map +1 -0
- package/dist/http-client-BrdVurTg.mjs +40 -0
- package/dist/http-client-BrdVurTg.mjs.map +1 -0
- package/dist/initia-B8l_x6sT.mjs +426 -0
- package/dist/initia-B8l_x6sT.mjs.map +1 -0
- package/dist/initia-Cj4bZ1dR.mjs +26 -0
- package/dist/initia-Cj4bZ1dR.mjs.map +1 -0
- package/dist/json-CGak0DqP.mjs +41 -0
- package/dist/json-CGak0DqP.mjs.map +1 -0
- package/dist/minievm-BAnGHa00.mjs +39 -0
- package/dist/minievm-BAnGHa00.mjs.map +1 -0
- package/dist/minievm-DZ8AhnD8.mjs +61 -0
- package/dist/minievm-DZ8AhnD8.mjs.map +1 -0
- package/dist/minimove-B8U85g-_.mjs +23 -0
- package/dist/minimove-B8U85g-_.mjs.map +1 -0
- package/dist/minimove-BBXTyhIv.mjs +24 -0
- package/dist/minimove-BBXTyhIv.mjs.map +1 -0
- package/dist/miniwasm-CB0XfStg.mjs +50 -0
- package/dist/miniwasm-CB0XfStg.mjs.map +1 -0
- package/dist/miniwasm-QdyYzmQ1.mjs +139 -0
- package/dist/miniwasm-QdyYzmQ1.mjs.map +1 -0
- package/dist/move-BaCv0oRX.mjs +64 -0
- package/dist/move-BaCv0oRX.mjs.map +1 -0
- package/dist/msg_pb-DxYxctLM.mjs +11 -0
- package/dist/msg_pb-DxYxctLM.mjs.map +1 -0
- package/dist/pagination_pb-DlkDYAcN.mjs +18 -0
- package/dist/pagination_pb-DlkDYAcN.mjs.map +1 -0
- package/dist/public-key-DV-uGaUC.mjs +550 -0
- package/dist/public-key-DV-uGaUC.mjs.map +1 -0
- package/dist/query_pb-cZ3szo3y.mjs +20 -0
- package/dist/query_pb-cZ3szo3y.mjs.map +1 -0
- package/dist/registry-provider-NzblVZQr.mjs +368 -0
- package/dist/registry-provider-NzblVZQr.mjs.map +1 -0
- package/dist/resolve-DdtY7KDz.mjs +50 -0
- package/dist/resolve-DdtY7KDz.mjs.map +1 -0
- package/dist/rolldown-runtime-wcPFST8Q.mjs +13 -0
- package/dist/service-BaMjxPNo.mjs +412 -0
- package/dist/service-BaMjxPNo.mjs.map +1 -0
- package/dist/service-CVFxsMp_.d.mts +151 -0
- package/dist/service_pb-Be-O-2-c.mjs +121 -0
- package/dist/service_pb-Be-O-2-c.mjs.map +1 -0
- package/dist/sign-DqagxLcg.mjs +212 -0
- package/dist/sign-DqagxLcg.mjs.map +1 -0
- package/dist/transport-common-BsPYcFQl.mjs +182 -0
- package/dist/transport-common-BsPYcFQl.mjs.map +1 -0
- package/dist/transport.browser-CCUWv3ta.mjs +31 -0
- package/dist/transport.browser-CCUWv3ta.mjs.map +1 -0
- package/dist/transport.node-DXcJtCnx.mjs +33 -0
- package/dist/transport.node-DXcJtCnx.mjs.map +1 -0
- package/dist/tx_pb-BJzY8SXE.mjs +38 -0
- package/dist/tx_pb-BJzY8SXE.mjs.map +1 -0
- package/dist/tx_pb-BVCXH992.mjs +39 -0
- package/dist/tx_pb-BVCXH992.mjs.map +1 -0
- package/dist/tx_pb-CnFNMLIq.mjs +107 -0
- package/dist/tx_pb-CnFNMLIq.mjs.map +1 -0
- package/dist/tx_pb-DYspoJTt.mjs +50 -0
- package/dist/tx_pb-DYspoJTt.mjs.map +1 -0
- package/dist/tx_pb-u3CoQYge.mjs +79 -0
- package/dist/tx_pb-u3CoQYge.mjs.map +1 -0
- package/dist/typed-context-Cg0If0M9.mjs +118 -0
- package/dist/typed-context-Cg0If0M9.mjs.map +1 -0
- package/dist/types-CLfdsa48.mjs +41 -0
- package/dist/types-CLfdsa48.mjs.map +1 -0
- package/dist/types-CSS5rfW1.mjs +303 -0
- package/dist/types-CSS5rfW1.mjs.map +1 -0
- package/dist/types-DGrP9Ro_.d.mts +39609 -0
- package/dist/types_pb-CrjtO9sB.mjs +21 -0
- package/dist/types_pb-CrjtO9sB.mjs.map +1 -0
- package/dist/types_pb-K7pKBvcg.mjs +1433 -0
- package/dist/types_pb-K7pKBvcg.mjs.map +1 -0
- package/dist/utils-B2carKSi.mjs +2 -0
- package/dist/waiting-BigHYRNN.mjs +1081 -0
- package/dist/waiting-BigHYRNN.mjs.map +1 -0
- package/dist/wasm-DdunGtLM.mjs +396 -0
- package/dist/wasm-DdunGtLM.mjs.map +1 -0
- package/package.json +195 -66
- package/dist/client/WebSocketClient.d.ts +0 -30
- package/dist/client/index.d.ts +0 -5
- package/dist/client/rest/APIRequester.d.ts +0 -27
- package/dist/client/rest/RESTClient.d.ts +0 -48
- package/dist/client/rest/Wallet.d.ts +0 -26
- package/dist/client/rest/api/AuctionAPI.d.ts +0 -6
- package/dist/client/rest/api/AuthAPI.d.ts +0 -8
- package/dist/client/rest/api/AuthzAPI.d.ts +0 -8
- package/dist/client/rest/api/BankAPI.d.ts +0 -10
- package/dist/client/rest/api/BaseAPI.d.ts +0 -5
- package/dist/client/rest/api/DistributionAPI.d.ts +0 -35
- package/dist/client/rest/api/EvidenceAPI.d.ts +0 -7
- package/dist/client/rest/api/EvmAPI.d.ts +0 -44
- package/dist/client/rest/api/FeeGrantAPI.d.ts +0 -22
- package/dist/client/rest/api/ForwardingAPI.d.ts +0 -20
- package/dist/client/rest/api/GovAPI.d.ts +0 -12
- package/dist/client/rest/api/GroupAPI.d.ts +0 -19
- package/dist/client/rest/api/IbcAPI.d.ts +0 -48
- package/dist/client/rest/api/IbcHooksAPI.d.ts +0 -8
- package/dist/client/rest/api/IbcNftAPI.d.ts +0 -10
- package/dist/client/rest/api/IbcPermAPI.d.ts +0 -12
- package/dist/client/rest/api/IbcTransferAPI.d.ts +0 -10
- package/dist/client/rest/api/InterTxAPI.d.ts +0 -6
- package/dist/client/rest/api/MarketmapAPI.d.ts +0 -18
- package/dist/client/rest/api/MoveAPI.d.ts +0 -62
- package/dist/client/rest/api/MstakingAPI.d.ts +0 -28
- package/dist/client/rest/api/OpchildAPI.d.ts +0 -12
- package/dist/client/rest/api/OphostAPI.d.ts +0 -33
- package/dist/client/rest/api/OracleAPI.d.ts +0 -22
- package/dist/client/rest/api/RewardAPI.d.ts +0 -8
- package/dist/client/rest/api/SlashingAPI.d.ts +0 -8
- package/dist/client/rest/api/TendermintAPI.d.ts +0 -16
- package/dist/client/rest/api/TokenfactoryAPI.d.ts +0 -12
- package/dist/client/rest/api/TxAPI.d.ts +0 -190
- package/dist/client/rest/api/UpgradeAPI.d.ts +0 -18
- package/dist/client/rest/api/WasmAPI.d.ts +0 -78
- package/dist/client/rest/api/index.d.ts +0 -30
- package/dist/core/Block.d.ts +0 -55
- package/dist/core/Coin.d.ts +0 -40
- package/dist/core/Coins.d.ts +0 -43
- package/dist/core/Denom.d.ts +0 -1
- package/dist/core/Duration.d.ts +0 -19
- package/dist/core/Msg.d.ts +0 -45
- package/dist/core/PublicKey.d.ts +0 -122
- package/dist/core/auction/AuctionParams.d.ts +0 -41
- package/dist/core/auction/index.d.ts +0 -2
- package/dist/core/auction/msgs/MsgAuctionBid.d.ts +0 -36
- package/dist/core/auction/msgs/MsgUpdateAuctionParams.d.ts +0 -33
- package/dist/core/auction/msgs/index.d.ts +0 -10
- package/dist/core/auth/Account.d.ts +0 -12
- package/dist/core/auth/AuthParams.d.ts +0 -37
- package/dist/core/auth/BaseAccount.d.ts +0 -45
- package/dist/core/auth/ModuleAccount.d.ts +0 -39
- package/dist/core/auth/index.d.ts +0 -5
- package/dist/core/auth/msgs/MsgUpdateAuthParams.d.ts +0 -33
- package/dist/core/auth/msgs/index.d.ts +0 -8
- package/dist/core/authz/authorizations/Authorization.d.ts +0 -41
- package/dist/core/authz/authorizations/ExecuteAuthorization.d.ts +0 -54
- package/dist/core/authz/authorizations/GenericAuthorization.d.ts +0 -28
- package/dist/core/authz/authorizations/PublishAuthorization.d.ts +0 -28
- package/dist/core/authz/authorizations/SendAuthorization.d.ts +0 -33
- package/dist/core/authz/authorizations/StakeAuthorization.d.ts +0 -60
- package/dist/core/authz/authorizations/index.d.ts +0 -6
- package/dist/core/authz/index.d.ts +0 -2
- package/dist/core/authz/msgs/MsgExecAuthorized.d.ts +0 -33
- package/dist/core/authz/msgs/MsgGrantAuthorization.d.ts +0 -36
- package/dist/core/authz/msgs/MsgRevokeAuthorization.d.ts +0 -35
- package/dist/core/authz/msgs/index.d.ts +0 -12
- package/dist/core/bank/BankParams.d.ts +0 -29
- package/dist/core/bank/DenomMetadata.d.ts +0 -43
- package/dist/core/bank/DenomUnit.d.ts +0 -28
- package/dist/core/bank/SendEnabled.d.ts +0 -25
- package/dist/core/bank/index.d.ts +0 -5
- package/dist/core/bank/msgs/MsgMultiSend.d.ts +0 -78
- package/dist/core/bank/msgs/MsgSend.d.ts +0 -36
- package/dist/core/bank/msgs/MsgSetDenomMetadata.d.ts +0 -33
- package/dist/core/bank/msgs/MsgSetSendEnabled.d.ts +0 -37
- package/dist/core/bank/msgs/MsgUpdateBankParams.d.ts +0 -33
- package/dist/core/bank/msgs/index.d.ts +0 -16
- package/dist/core/bech32.d.ts +0 -27
- package/dist/core/celestia/Blob.d.ts +0 -24
- package/dist/core/celestia/BlobTx.d.ts +0 -25
- package/dist/core/celestia/index.d.ts +0 -3
- package/dist/core/celestia/msgs/MsgPayForBlobs.d.ts +0 -31
- package/dist/core/celestia/msgs/index.d.ts +0 -7
- package/dist/core/consensus/ABCIParams.d.ts +0 -21
- package/dist/core/consensus/BlockParams.d.ts +0 -24
- package/dist/core/consensus/EvidenceParams.d.ts +0 -28
- package/dist/core/consensus/ValidatorParams.d.ts +0 -21
- package/dist/core/consensus/index.d.ts +0 -5
- package/dist/core/consensus/msgs/MsgUpdateConsensusParams.d.ts +0 -45
- package/dist/core/consensus/msgs/index.d.ts +0 -8
- package/dist/core/crisis/index.d.ts +0 -1
- package/dist/core/crisis/msgs/MsgUpdateCrisisParams.d.ts +0 -33
- package/dist/core/crisis/msgs/MsgVerifyInvariant.d.ts +0 -35
- package/dist/core/crisis/msgs/index.d.ts +0 -10
- package/dist/core/distribution/DistributionParams.d.ts +0 -32
- package/dist/core/distribution/RewardWeight.d.ts +0 -25
- package/dist/core/distribution/index.d.ts +0 -3
- package/dist/core/distribution/msgs/MsgCommunityPoolSpend.d.ts +0 -36
- package/dist/core/distribution/msgs/MsgDepositValidatorRewardsPool.d.ts +0 -40
- package/dist/core/distribution/msgs/MsgFundCommunityPool.d.ts +0 -33
- package/dist/core/distribution/msgs/MsgSetWithdrawAddress.d.ts +0 -32
- package/dist/core/distribution/msgs/MsgUpdateDistrParams.d.ts +0 -33
- package/dist/core/distribution/msgs/MsgWithdrawDelegatorReward.d.ts +0 -32
- package/dist/core/distribution/msgs/MsgWithdrawValidatorCommission.d.ts +0 -29
- package/dist/core/distribution/msgs/index.d.ts +0 -20
- package/dist/core/evidence/Equivocation.d.ts +0 -38
- package/dist/core/evidence/Evidence.d.ts +0 -11
- package/dist/core/evidence/index.d.ts +0 -3
- package/dist/core/evidence/msgs/MsgSubmitEvidence.d.ts +0 -33
- package/dist/core/evidence/msgs/index.d.ts +0 -8
- package/dist/core/evm/AccessTuple.d.ts +0 -25
- package/dist/core/evm/EvmParams.d.ts +0 -39
- package/dist/core/evm/index.d.ts +0 -3
- package/dist/core/evm/msgs/MsgCall.d.ts +0 -42
- package/dist/core/evm/msgs/MsgCreate.d.ts +0 -39
- package/dist/core/evm/msgs/MsgCreate2.d.ts +0 -42
- package/dist/core/evm/msgs/MsgUpdateEvmParams.d.ts +0 -33
- package/dist/core/evm/msgs/index.d.ts +0 -14
- package/dist/core/feegrant/allowances/AllowedMsgAllowance.d.ts +0 -33
- package/dist/core/feegrant/allowances/BasicAllowance.d.ts +0 -32
- package/dist/core/feegrant/allowances/PeriodicAllowance.d.ts +0 -43
- package/dist/core/feegrant/allowances/index.d.ts +0 -16
- package/dist/core/feegrant/index.d.ts +0 -2
- package/dist/core/feegrant/msgs/MsgGrantAllowance.d.ts +0 -36
- package/dist/core/feegrant/msgs/MsgRevokeAllowance.d.ts +0 -32
- package/dist/core/feegrant/msgs/index.d.ts +0 -10
- package/dist/core/forwarding/index.d.ts +0 -1
- package/dist/core/forwarding/msgs/MsgClearForwardingAccount.d.ts +0 -32
- package/dist/core/forwarding/msgs/MsgRegisterForwardingAccount.d.ts +0 -38
- package/dist/core/forwarding/msgs/index.d.ts +0 -10
- package/dist/core/gov/Deposit.d.ts +0 -29
- package/dist/core/gov/GovParams.d.ts +0 -82
- package/dist/core/gov/TallyResult.d.ts +0 -36
- package/dist/core/gov/Vesting.d.ts +0 -28
- package/dist/core/gov/Vote.d.ts +0 -55
- package/dist/core/gov/index.d.ts +0 -6
- package/dist/core/gov/msgs/MsgCancelProposal.d.ts +0 -32
- package/dist/core/gov/msgs/MsgDeposit.d.ts +0 -36
- package/dist/core/gov/msgs/MsgDepositLegacy.d.ts +0 -36
- package/dist/core/gov/msgs/MsgSubmitProposal.d.ts +0 -49
- package/dist/core/gov/msgs/MsgSubmitProposalLegacy.d.ts +0 -37
- package/dist/core/gov/msgs/MsgUpdateGovParams.d.ts +0 -33
- package/dist/core/gov/msgs/MsgVote.d.ts +0 -41
- package/dist/core/gov/msgs/MsgVoteLegacy.d.ts +0 -38
- package/dist/core/gov/msgs/MsgVoteWeighted.d.ts +0 -39
- package/dist/core/gov/msgs/MsgVoteWeightedLegacy.d.ts +0 -36
- package/dist/core/gov/msgs/index.d.ts +0 -26
- package/dist/core/gov/proposals/Content.d.ts +0 -12
- package/dist/core/gov/proposals/Proposal.d.ts +0 -79
- package/dist/core/gov/proposals/TextProposal.d.ts +0 -31
- package/dist/core/gov/proposals/index.d.ts +0 -3
- package/dist/core/group/GroupInfo.d.ts +0 -37
- package/dist/core/group/GroupMember.d.ts +0 -78
- package/dist/core/group/GroupPolicyInfo.d.ts +0 -41
- package/dist/core/group/GroupProposal.d.ts +0 -82
- package/dist/core/group/GroupVote.d.ts +0 -36
- package/dist/core/group/index.d.ts +0 -7
- package/dist/core/group/msgs/MsgCreateGroup.d.ts +0 -36
- package/dist/core/group/msgs/MsgCreateGroupPolicy.d.ts +0 -39
- package/dist/core/group/msgs/MsgCreateGroupWithPolicy.d.ts +0 -46
- package/dist/core/group/msgs/MsgGroupExec.d.ts +0 -32
- package/dist/core/group/msgs/MsgGroupVote.d.ts +0 -46
- package/dist/core/group/msgs/MsgLeaveGroup.d.ts +0 -32
- package/dist/core/group/msgs/MsgSubmitGroupProposal.d.ts +0 -50
- package/dist/core/group/msgs/MsgUpdateGroupAdmin.d.ts +0 -35
- package/dist/core/group/msgs/MsgUpdateGroupDecisionPolicy.d.ts +0 -36
- package/dist/core/group/msgs/MsgUpdateGroupMembers.d.ts +0 -36
- package/dist/core/group/msgs/MsgUpdateGroupMetadata.d.ts +0 -35
- package/dist/core/group/msgs/MsgUpdateGroupPolicyAdmin.d.ts +0 -35
- package/dist/core/group/msgs/MsgUpdateGroupPolicyMetadata.d.ts +0 -35
- package/dist/core/group/msgs/MsgWithdrawProposal.d.ts +0 -32
- package/dist/core/group/msgs/index.d.ts +0 -32
- package/dist/core/group/policies/DecisionPolicyWindows.d.ts +0 -25
- package/dist/core/group/policies/PercentageDecisionPolicy.d.ts +0 -32
- package/dist/core/group/policies/ThresholdDecisionPolicy.d.ts +0 -32
- package/dist/core/group/policies/index.d.ts +0 -15
- package/dist/core/ibc/applications/fee/IbcFee.d.ts +0 -28
- package/dist/core/ibc/applications/fee/IdentifiedPacketFee.d.ts +0 -26
- package/dist/core/ibc/applications/fee/Metadata.d.ts +0 -24
- package/dist/core/ibc/applications/fee/PacketFee.d.ts +0 -29
- package/dist/core/ibc/applications/fee/index.d.ts +0 -5
- package/dist/core/ibc/applications/fee/msgs/MsgPayPacketFee.d.ts +0 -31
- package/dist/core/ibc/applications/fee/msgs/MsgPayPacketFeeAsync.d.ts +0 -26
- package/dist/core/ibc/applications/fee/msgs/MsgRegisterCounterpartyPayee.d.ts +0 -28
- package/dist/core/ibc/applications/fee/msgs/MsgRegisterPayee.d.ts +0 -28
- package/dist/core/ibc/applications/fee/msgs/index.d.ts +0 -13
- package/dist/core/ibc/applications/index.d.ts +0 -4
- package/dist/core/ibc/applications/interchain-account/Account.d.ts +0 -25
- package/dist/core/ibc/applications/interchain-account/Metadata.d.ts +0 -36
- package/dist/core/ibc/applications/interchain-account/controller/Params.d.ts +0 -21
- package/dist/core/ibc/applications/interchain-account/host/Params.d.ts +0 -24
- package/dist/core/ibc/applications/interchain-account/index.d.ts +0 -4
- package/dist/core/ibc/applications/nft-transfer/IbcNftParams.d.ts +0 -28
- package/dist/core/ibc/applications/nft-transfer/NftClassTrace.d.ts +0 -24
- package/dist/core/ibc/applications/nft-transfer/NonFungibleTokenPacketData.d.ts +0 -45
- package/dist/core/ibc/applications/nft-transfer/index.d.ts +0 -4
- package/dist/core/ibc/applications/nft-transfer/msgs/MsgNftTransfer.d.ts +0 -54
- package/dist/core/ibc/applications/nft-transfer/msgs/MsgUpdateIbcNftParams.d.ts +0 -33
- package/dist/core/ibc/applications/nft-transfer/msgs/index.d.ts +0 -10
- package/dist/core/ibc/applications/perm/index.d.ts +0 -1
- package/dist/core/ibc/applications/perm/msgs/MsgUpdateIbcPermAdmin.d.ts +0 -38
- package/dist/core/ibc/applications/perm/msgs/MsgUpdatePermissionedRelayers.d.ts +0 -38
- package/dist/core/ibc/applications/perm/msgs/index.d.ts +0 -10
- package/dist/core/ibc/applications/transfer/DenomTrace.d.ts +0 -24
- package/dist/core/ibc/applications/transfer/FungibleTokenPacketData.d.ts +0 -33
- package/dist/core/ibc/applications/transfer/IbcTransferParams.d.ts +0 -24
- package/dist/core/ibc/applications/transfer/authorizations/Allocation.d.ts +0 -34
- package/dist/core/ibc/applications/transfer/authorizations/TransferAuthorization.d.ts +0 -23
- package/dist/core/ibc/applications/transfer/authorizations/index.d.ts +0 -2
- package/dist/core/ibc/applications/transfer/index.d.ts +0 -5
- package/dist/core/ibc/applications/transfer/msgs/MsgTransfer.d.ts +0 -52
- package/dist/core/ibc/applications/transfer/msgs/MsgUpdateIbcTransferParams.d.ts +0 -26
- package/dist/core/ibc/applications/transfer/msgs/index.d.ts +0 -10
- package/dist/core/ibc/core/channel/Channel.d.ts +0 -39
- package/dist/core/ibc/core/channel/ChannelCounterparty.d.ts +0 -24
- package/dist/core/ibc/core/channel/ChannelOrder.d.ts +0 -3
- package/dist/core/ibc/core/channel/ChannelState.d.ts +0 -3
- package/dist/core/ibc/core/channel/ErrorReceipt.d.ts +0 -20
- package/dist/core/ibc/core/channel/IbcChannelParams.d.ts +0 -22
- package/dist/core/ibc/core/channel/IdentifiedChannel.d.ts +0 -45
- package/dist/core/ibc/core/channel/Packet.d.ts +0 -43
- package/dist/core/ibc/core/channel/PacketId.d.ts +0 -27
- package/dist/core/ibc/core/channel/Timeout.d.ts +0 -25
- package/dist/core/ibc/core/channel/Upgrade.d.ts +0 -24
- package/dist/core/ibc/core/channel/UpgradeFields.d.ts +0 -23
- package/dist/core/ibc/core/channel/index.d.ts +0 -13
- package/dist/core/ibc/core/channel/msgs/MsgChannelCloseConfirm.d.ts +0 -32
- package/dist/core/ibc/core/channel/msgs/MsgChannelCloseInit.d.ts +0 -27
- package/dist/core/ibc/core/channel/msgs/MsgChannelOpenAck.d.ts +0 -36
- package/dist/core/ibc/core/channel/msgs/MsgChannelOpenConfirm.d.ts +0 -32
- package/dist/core/ibc/core/channel/msgs/MsgChannelOpenInit.d.ts +0 -28
- package/dist/core/ibc/core/channel/msgs/MsgChannelOpenTry.d.ts +0 -36
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeAck.d.ts +0 -37
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeCancel.d.ts +0 -35
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeConfirm.d.ts +0 -40
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeInit.d.ts +0 -30
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeOpen.d.ts +0 -37
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeTimeout.d.ts +0 -35
- package/dist/core/ibc/core/channel/msgs/MsgChannelUpgradeTry.d.ts +0 -41
- package/dist/core/ibc/core/channel/msgs/MsgRecvAcknowledgement.d.ts +0 -32
- package/dist/core/ibc/core/channel/msgs/MsgRecvPacket.d.ts +0 -30
- package/dist/core/ibc/core/channel/msgs/MsgTimeout.d.ts +0 -32
- package/dist/core/ibc/core/channel/msgs/MsgTimeoutClose.d.ts +0 -34
- package/dist/core/ibc/core/channel/msgs/MsgUpdateIbcChannelParams.d.ts +0 -26
- package/dist/core/ibc/core/channel/msgs/index.d.ts +0 -41
- package/dist/core/ibc/core/client/ClientConsensusStates.d.ts +0 -25
- package/dist/core/ibc/core/client/ConsensusStateWithHeight.d.ts +0 -25
- package/dist/core/ibc/core/client/Height.d.ts +0 -24
- package/dist/core/ibc/core/client/IbcClientParams.d.ts +0 -21
- package/dist/core/ibc/core/client/IdentifiedClient.d.ts +0 -24
- package/dist/core/ibc/core/client/index.d.ts +0 -6
- package/dist/core/ibc/core/client/msgs/MsgCreateClient.d.ts +0 -27
- package/dist/core/ibc/core/client/msgs/MsgIBCSoftwareUpgrade.d.ts +0 -28
- package/dist/core/ibc/core/client/msgs/MsgRecoverClient.d.ts +0 -27
- package/dist/core/ibc/core/client/msgs/MsgSubmitMisbehaviour.d.ts +0 -27
- package/dist/core/ibc/core/client/msgs/MsgUpdateClient.d.ts +0 -27
- package/dist/core/ibc/core/client/msgs/MsgUpdateIbcClientParams.d.ts +0 -26
- package/dist/core/ibc/core/client/msgs/MsgUpgradeClient.d.ts +0 -33
- package/dist/core/ibc/core/client/msgs/index.d.ts +0 -19
- package/dist/core/ibc/core/client/msgs/tendermint/crypto.d.ts +0 -43
- package/dist/core/ibc/core/client/msgs/tendermint/types.d.ts +0 -187
- package/dist/core/ibc/core/client/msgs/tendermint/version.d.ts +0 -38
- package/dist/core/ibc/core/commitment/MerklePrefix.d.ts +0 -21
- package/dist/core/ibc/core/commitment/MerkleRoot.d.ts +0 -21
- package/dist/core/ibc/core/commitment/index.d.ts +0 -2
- package/dist/core/ibc/core/connection/ConnectionCounterparty.d.ts +0 -28
- package/dist/core/ibc/core/connection/ConnectionState.d.ts +0 -3
- package/dist/core/ibc/core/connection/IbcConnectionParams.d.ts +0 -21
- package/dist/core/ibc/core/connection/IbcVersion.d.ts +0 -24
- package/dist/core/ibc/core/connection/IdentifiedConnection.d.ts +0 -39
- package/dist/core/ibc/core/connection/index.d.ts +0 -5
- package/dist/core/ibc/core/connection/msgs/MsgConnectionOpenAck.d.ts +0 -42
- package/dist/core/ibc/core/connection/msgs/MsgConnectionOpenConfirm.d.ts +0 -30
- package/dist/core/ibc/core/connection/msgs/MsgConnectionOpenInit.d.ts +0 -33
- package/dist/core/ibc/core/connection/msgs/MsgConnectionOpenTry.d.ts +0 -46
- package/dist/core/ibc/core/connection/msgs/MsgUpdateIbcConnectionParams.d.ts +0 -26
- package/dist/core/ibc/core/connection/msgs/index.d.ts +0 -15
- package/dist/core/ibc/core/index.d.ts +0 -4
- package/dist/core/ibc/index.d.ts +0 -2
- package/dist/core/ibc/lightclient/index.d.ts +0 -1
- package/dist/core/ibc/lightclient/tendermint/Header.d.ts +0 -29
- package/dist/core/ibchooks/ACL.d.ts +0 -25
- package/dist/core/ibchooks/IbcHooksParams.d.ts +0 -25
- package/dist/core/ibchooks/index.d.ts +0 -3
- package/dist/core/ibchooks/msgs/MsgUpdateACL.d.ts +0 -35
- package/dist/core/ibchooks/msgs/MsgUpdateIbcHooksParams.d.ts +0 -33
- package/dist/core/ibchooks/msgs/index.d.ts +0 -10
- package/dist/core/index.d.ts +0 -40
- package/dist/core/intertx/index.d.ts +0 -1
- package/dist/core/intertx/msgs/MsgRegisterAccount.d.ts +0 -39
- package/dist/core/intertx/msgs/MsgSubmitTx.d.ts +0 -36
- package/dist/core/intertx/msgs/index.d.ts +0 -10
- package/dist/core/marketmap/Market.d.ts +0 -26
- package/dist/core/marketmap/MarketmapParams.d.ts +0 -25
- package/dist/core/marketmap/ProviderConfig.d.ts +0 -34
- package/dist/core/marketmap/Ticker.d.ts +0 -34
- package/dist/core/marketmap/index.d.ts +0 -5
- package/dist/core/marketmap/msgs/MsgCreateMarkets.d.ts +0 -33
- package/dist/core/marketmap/msgs/MsgRemoveMarketAuthorities.d.ts +0 -32
- package/dist/core/marketmap/msgs/MsgRemoveMarkets.d.ts +0 -32
- package/dist/core/marketmap/msgs/MsgUpdateMarketmapParams.d.ts +0 -33
- package/dist/core/marketmap/msgs/MsgUpdateMarkets.d.ts +0 -33
- package/dist/core/marketmap/msgs/MsgUpsertMarkets.d.ts +0 -33
- package/dist/core/marketmap/msgs/index.d.ts +0 -18
- package/dist/core/move/Module.d.ts +0 -36
- package/dist/core/move/MoveParams.d.ts +0 -37
- package/dist/core/move/index.d.ts +0 -3
- package/dist/core/move/msgs/MsgDelist.d.ts +0 -32
- package/dist/core/move/msgs/MsgExecute.d.ts +0 -44
- package/dist/core/move/msgs/MsgExecuteJSON.d.ts +0 -44
- package/dist/core/move/msgs/MsgGovExecute.d.ts +0 -47
- package/dist/core/move/msgs/MsgGovExecuteJSON.d.ts +0 -47
- package/dist/core/move/msgs/MsgGovPublish.d.ts +0 -41
- package/dist/core/move/msgs/MsgGovScript.d.ts +0 -41
- package/dist/core/move/msgs/MsgGovScriptJSON.d.ts +0 -41
- package/dist/core/move/msgs/MsgPublish.d.ts +0 -38
- package/dist/core/move/msgs/MsgScript.d.ts +0 -38
- package/dist/core/move/msgs/MsgScriptJSON.d.ts +0 -38
- package/dist/core/move/msgs/MsgUpdateMoveParams.d.ts +0 -33
- package/dist/core/move/msgs/MsgWhitelist.d.ts +0 -35
- package/dist/core/move/msgs/index.d.ts +0 -32
- package/dist/core/mstaking/Delegation.d.ts +0 -36
- package/dist/core/mstaking/MstakingParams.d.ts +0 -44
- package/dist/core/mstaking/Redelegation.d.ts +0 -71
- package/dist/core/mstaking/UnbondingDelegation.d.ts +0 -57
- package/dist/core/mstaking/Validator.d.ts +0 -137
- package/dist/core/mstaking/index.d.ts +0 -6
- package/dist/core/mstaking/msgs/MsgBeginRedelegate.d.ts +0 -39
- package/dist/core/mstaking/msgs/MsgCancelUnbondingDelegation.d.ts +0 -39
- package/dist/core/mstaking/msgs/MsgCreateValidator.d.ts +0 -44
- package/dist/core/mstaking/msgs/MsgDelegate.d.ts +0 -36
- package/dist/core/mstaking/msgs/MsgEditValidator.d.ts +0 -37
- package/dist/core/mstaking/msgs/MsgUndelegate.d.ts +0 -36
- package/dist/core/mstaking/msgs/MsgUpdateMstakingParams.d.ts +0 -33
- package/dist/core/mstaking/msgs/index.d.ts +0 -20
- package/dist/core/num.d.ts +0 -2
- package/dist/core/opchild/BridgeInfo.d.ts +0 -34
- package/dist/core/opchild/OpValidator.d.ts +0 -32
- package/dist/core/opchild/OpchildParams.d.ts +0 -45
- package/dist/core/opchild/index.d.ts +0 -4
- package/dist/core/opchild/msgs/MsgAddBridgeExecutor.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgAddFeeWhitelistAddresses.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgAddValidator.d.ts +0 -39
- package/dist/core/opchild/msgs/MsgExecuteMessages.d.ts +0 -33
- package/dist/core/opchild/msgs/MsgFinalizeTokenDeposit.d.ts +0 -52
- package/dist/core/opchild/msgs/MsgInitiateTokenWithdrawal.d.ts +0 -36
- package/dist/core/opchild/msgs/MsgRemoveBridgeExecutor.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgRemoveFeeWhitelistAddresses.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgRemoveValidator.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgSetBridgeInfo.d.ts +0 -33
- package/dist/core/opchild/msgs/MsgSpendFeePool.d.ts +0 -36
- package/dist/core/opchild/msgs/MsgUpdateMinGasPrices.d.ts +0 -33
- package/dist/core/opchild/msgs/MsgUpdateOpchildAdmin.d.ts +0 -32
- package/dist/core/opchild/msgs/MsgUpdateOpchildParams.d.ts +0 -33
- package/dist/core/opchild/msgs/MsgUpdateOracle.d.ts +0 -35
- package/dist/core/opchild/msgs/index.d.ts +0 -36
- package/dist/core/ophost/BatchInfo.d.ts +0 -25
- package/dist/core/ophost/BatchInfoWithOutput.d.ts +0 -26
- package/dist/core/ophost/BridgeConfig.d.ts +0 -45
- package/dist/core/ophost/OphostParams.d.ts +0 -26
- package/dist/core/ophost/Output.d.ts +0 -30
- package/dist/core/ophost/index.d.ts +0 -6
- package/dist/core/ophost/msgs/MsgCreateBridge.d.ts +0 -33
- package/dist/core/ophost/msgs/MsgDeleteOutput.d.ts +0 -35
- package/dist/core/ophost/msgs/MsgFinalizeTokenWithdrawal.d.ts +0 -60
- package/dist/core/ophost/msgs/MsgInitiateTokenDeposit.d.ts +0 -42
- package/dist/core/ophost/msgs/MsgProposeOutput.d.ts +0 -41
- package/dist/core/ophost/msgs/MsgRecordBatch.d.ts +0 -35
- package/dist/core/ophost/msgs/MsgUpdateBatchInfo.d.ts +0 -36
- package/dist/core/ophost/msgs/MsgUpdateChallenger.d.ts +0 -35
- package/dist/core/ophost/msgs/MsgUpdateFinalizationPeriod.d.ts +0 -36
- package/dist/core/ophost/msgs/MsgUpdateMetadata.d.ts +0 -35
- package/dist/core/ophost/msgs/MsgUpdateOphostParams.d.ts +0 -33
- package/dist/core/ophost/msgs/MsgUpdateOracleConfig.d.ts +0 -35
- package/dist/core/ophost/msgs/MsgUpdateProposer.d.ts +0 -35
- package/dist/core/ophost/msgs/index.d.ts +0 -32
- package/dist/core/oracle/CurrencyPair.d.ts +0 -25
- package/dist/core/oracle/QuotePrice.d.ts +0 -27
- package/dist/core/oracle/index.d.ts +0 -3
- package/dist/core/oracle/msgs/MsgAddCurrencyPairs.d.ts +0 -33
- package/dist/core/oracle/msgs/MsgRemoveCurrencyPairs.d.ts +0 -32
- package/dist/core/oracle/msgs/index.d.ts +0 -10
- package/dist/core/params/ParamChange.d.ts +0 -42
- package/dist/core/params/index.d.ts +0 -2
- package/dist/core/params/proposals/ParameterChangeProposal.d.ts +0 -35
- package/dist/core/params/proposals/index.d.ts +0 -1
- package/dist/core/reward/RewardParams.d.ts +0 -38
- package/dist/core/reward/index.d.ts +0 -2
- package/dist/core/reward/msgs/MsgUpdateRewardParams.d.ts +0 -33
- package/dist/core/reward/msgs/index.d.ts +0 -8
- package/dist/core/slashing/SlashingParams.d.ts +0 -38
- package/dist/core/slashing/ValidatorSigningInfo.d.ts +0 -37
- package/dist/core/slashing/index.d.ts +0 -3
- package/dist/core/slashing/msgs/MsgUnjail.d.ts +0 -29
- package/dist/core/slashing/msgs/MsgUpdateSlashingParams.d.ts +0 -33
- package/dist/core/slashing/msgs/index.d.ts +0 -10
- package/dist/core/tokenfactory/TokenfactoryParams.d.ts +0 -25
- package/dist/core/tokenfactory/index.d.ts +0 -2
- package/dist/core/tokenfactory/msgs/MsgBurn.d.ts +0 -33
- package/dist/core/tokenfactory/msgs/MsgChangeAdmin.d.ts +0 -35
- package/dist/core/tokenfactory/msgs/MsgCreateDenom.d.ts +0 -32
- package/dist/core/tokenfactory/msgs/MsgMint.d.ts +0 -36
- package/dist/core/tokenfactory/msgs/MsgSetBeforeSendHook.d.ts +0 -35
- package/dist/core/tokenfactory/msgs/MsgSetDenomMetadataWasm.d.ts +0 -33
- package/dist/core/tokenfactory/msgs/MsgUpdateTokenfactoryParams.d.ts +0 -33
- package/dist/core/tokenfactory/msgs/index.d.ts +0 -20
- package/dist/core/tx/CompactBitArray.d.ts +0 -22
- package/dist/core/tx/Fee.d.ts +0 -31
- package/dist/core/tx/MultiSignature.d.ts +0 -13
- package/dist/core/tx/SignDoc.d.ts +0 -36
- package/dist/core/tx/SignMode.d.ts +0 -3
- package/dist/core/tx/SignatureV2.d.ts +0 -66
- package/dist/core/tx/Tx.d.ts +0 -146
- package/dist/core/tx/TxInfo.d.ts +0 -74
- package/dist/core/tx/index.d.ts +0 -7
- package/dist/core/upgrade/Plan.d.ts +0 -27
- package/dist/core/upgrade/index.d.ts +0 -2
- package/dist/core/upgrade/msgs/MsgCancelUpgrade.d.ts +0 -29
- package/dist/core/upgrade/msgs/MsgSoftwareUpgrade.d.ts +0 -33
- package/dist/core/upgrade/msgs/index.d.ts +0 -10
- package/dist/core/wasm/AbsoluteTxPosition.d.ts +0 -24
- package/dist/core/wasm/AccessConfig.d.ts +0 -27
- package/dist/core/wasm/WasmParams.d.ts +0 -29
- package/dist/core/wasm/authorizations/AcceptedMessageKeysFilter.d.ts +0 -28
- package/dist/core/wasm/authorizations/AcceptedMessagesFilter.d.ts +0 -28
- package/dist/core/wasm/authorizations/AllowAllMessagesFilter.d.ts +0 -24
- package/dist/core/wasm/authorizations/CodeGrant.d.ts +0 -25
- package/dist/core/wasm/authorizations/CombinedLimit.d.ts +0 -32
- package/dist/core/wasm/authorizations/ContractExecutionAuthorization.d.ts +0 -29
- package/dist/core/wasm/authorizations/ContractFilter.d.ts +0 -13
- package/dist/core/wasm/authorizations/ContractGrant.d.ts +0 -30
- package/dist/core/wasm/authorizations/ContractLimit.d.ts +0 -13
- package/dist/core/wasm/authorizations/ContractMigrationAuthorization.d.ts +0 -29
- package/dist/core/wasm/authorizations/MaxCallsLimit.d.ts +0 -28
- package/dist/core/wasm/authorizations/MaxFundsLimit.d.ts +0 -29
- package/dist/core/wasm/authorizations/StoreCodeAuthorization.d.ts +0 -29
- package/dist/core/wasm/authorizations/index.d.ts +0 -11
- package/dist/core/wasm/index.d.ts +0 -5
- package/dist/core/wasm/msgs/MsgAddCodeUploadParamsAddresses.d.ts +0 -32
- package/dist/core/wasm/msgs/MsgClearAdmin.d.ts +0 -32
- package/dist/core/wasm/msgs/MsgExecuteContract.d.ts +0 -39
- package/dist/core/wasm/msgs/MsgInstantiateContract.d.ts +0 -45
- package/dist/core/wasm/msgs/MsgInstantiateContractV2.d.ts +0 -51
- package/dist/core/wasm/msgs/MsgMigrateContract.d.ts +0 -38
- package/dist/core/wasm/msgs/MsgPinCodes.d.ts +0 -32
- package/dist/core/wasm/msgs/MsgRemoveCodeUploadParamsAddresses.d.ts +0 -32
- package/dist/core/wasm/msgs/MsgStoreAndInstantiateContract.d.ts +0 -61
- package/dist/core/wasm/msgs/MsgStoreAndMigrateContract.d.ts +0 -42
- package/dist/core/wasm/msgs/MsgStoreCode.d.ts +0 -36
- package/dist/core/wasm/msgs/MsgSudoContract.d.ts +0 -35
- package/dist/core/wasm/msgs/MsgUnpinCodes.d.ts +0 -32
- package/dist/core/wasm/msgs/MsgUpdateAdmin.d.ts +0 -35
- package/dist/core/wasm/msgs/MsgUpdateContractLabel.d.ts +0 -35
- package/dist/core/wasm/msgs/MsgUpdateInstantiateConfig.d.ts +0 -36
- package/dist/core/wasm/msgs/MsgUpdateWasmParams.d.ts +0 -33
- package/dist/core/wasm/msgs/index.d.ts +0 -40
- package/dist/core/wasmextension/AccessConfigExt.d.ts +0 -28
- package/dist/core/wasmextension/index.d.ts +0 -2
- package/dist/core/wasmextension/msgs/MsgStoreCodeAdmin.d.ts +0 -39
- package/dist/core/wasmextension/msgs/index.d.ts +0 -8
- package/dist/index.cjs +0 -6
- package/dist/index.d.ts +0 -4
- package/dist/index.mjs +0 -100795
- package/dist/key/Key.d.ts +0 -20
- package/dist/key/MnemonicKey.d.ts +0 -14
- package/dist/key/RawKey.d.ts +0 -9
- package/dist/key/index.d.ts +0 -3
- package/dist/util/bcs.d.ts +0 -44
- package/dist/util/hash.d.ts +0 -4
- package/dist/util/index.d.ts +0 -3
- package/dist/util/json.d.ts +0 -9
|
@@ -0,0 +1,533 @@
|
|
|
1
|
+
import { d as ParseError, o as ContractError } from "./errors-CN1MFOLv.mjs";
|
|
2
|
+
import { t as AccAddress } from "./address-DwAkzgJk.mjs";
|
|
3
|
+
import { t as UpgradePolicy } from "./types_pb-CrjtO9sB.mjs";
|
|
4
|
+
import { bcs } from "@mysten/bcs";
|
|
5
|
+
//#region src/contracts/move/abi-fetcher.ts
|
|
6
|
+
/** In-memory ABI cache */
|
|
7
|
+
const abiCache = /* @__PURE__ */ new Map();
|
|
8
|
+
/** Default cache TTL (5 minutes) */
|
|
9
|
+
const DEFAULT_CACHE_TTL = 300 * 1e3;
|
|
10
|
+
/**
|
|
11
|
+
* Gets the cache key for a module.
|
|
12
|
+
*/
|
|
13
|
+
function getCacheKey(moduleAddress, moduleName) {
|
|
14
|
+
return `${moduleAddress.toLowerCase()}::${moduleName}`;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Gets a cached ABI if available and not expired.
|
|
18
|
+
*
|
|
19
|
+
* @param moduleAddress - Module address
|
|
20
|
+
* @param moduleName - Module name
|
|
21
|
+
* @param ttl - Cache TTL in milliseconds (ignored for IMMUTABLE modules)
|
|
22
|
+
* @returns Cached ABI or undefined
|
|
23
|
+
*/
|
|
24
|
+
function getCachedAbi(moduleAddress, moduleName, ttl = DEFAULT_CACHE_TTL) {
|
|
25
|
+
const key = getCacheKey(moduleAddress, moduleName);
|
|
26
|
+
const entry = abiCache.get(key);
|
|
27
|
+
if (!entry) return void 0;
|
|
28
|
+
if (entry.permanent) return entry.abi;
|
|
29
|
+
if (Date.now() - entry.timestamp > ttl) {
|
|
30
|
+
abiCache.delete(key);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
return entry.abi;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Caches a module ABI.
|
|
37
|
+
*
|
|
38
|
+
* @param moduleAddress - Module address
|
|
39
|
+
* @param moduleName - Module name
|
|
40
|
+
* @param abi - Module ABI to cache
|
|
41
|
+
* @param permanent - If true, cache never expires (for IMMUTABLE modules)
|
|
42
|
+
*/
|
|
43
|
+
function cacheModuleAbi(moduleAddress, moduleName, abi, permanent = false) {
|
|
44
|
+
const key = getCacheKey(moduleAddress, moduleName);
|
|
45
|
+
abiCache.set(key, {
|
|
46
|
+
abi,
|
|
47
|
+
timestamp: Date.now(),
|
|
48
|
+
permanent
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Clears the ABI cache.
|
|
53
|
+
* Optionally clear only entries for a specific address.
|
|
54
|
+
*
|
|
55
|
+
* @param moduleAddress - Optional address to clear cache for
|
|
56
|
+
*/
|
|
57
|
+
function clearAbiCache(moduleAddress) {
|
|
58
|
+
if (moduleAddress) {
|
|
59
|
+
const prefix = moduleAddress.toLowerCase() + "::";
|
|
60
|
+
for (const key of abiCache.keys()) if (key.startsWith(prefix)) abiCache.delete(key);
|
|
61
|
+
} else abiCache.clear();
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Parses a raw ABI JSON string into a typed MoveModuleAbi.
|
|
65
|
+
*
|
|
66
|
+
* @param abiJson - JSON string from Module.abi
|
|
67
|
+
* @returns Parsed module ABI
|
|
68
|
+
* @throws Error if JSON parsing fails or ABI structure is invalid
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const abi = parseModuleAbi('{"address":"0x1","name":"coin",...}')
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
function parseModuleAbi(abiJson) {
|
|
76
|
+
let raw;
|
|
77
|
+
try {
|
|
78
|
+
raw = JSON.parse(abiJson);
|
|
79
|
+
} catch (error) {
|
|
80
|
+
throw new ParseError("MoveModuleABI", `Invalid JSON: ${error instanceof Error ? error.message : String(error)}`);
|
|
81
|
+
}
|
|
82
|
+
if (!raw.address || !raw.name) throw new ParseError("MoveModuleABI", "Missing required field: address or name");
|
|
83
|
+
const exposedFunctions = (raw.exposed_functions || []).map((fn) => ({
|
|
84
|
+
name: fn.name,
|
|
85
|
+
visibility: parseVisibility(fn.visibility),
|
|
86
|
+
is_entry: fn.is_entry ?? false,
|
|
87
|
+
is_view: fn.is_view ?? false,
|
|
88
|
+
generic_type_params: (fn.generic_type_params || []).map((param) => ({ constraints: param.constraints || [] })),
|
|
89
|
+
params: fn.params || [],
|
|
90
|
+
return: fn.return || []
|
|
91
|
+
}));
|
|
92
|
+
const structs = (raw.structs || []).map((s) => ({
|
|
93
|
+
name: s.name,
|
|
94
|
+
is_native: s.is_native ?? false,
|
|
95
|
+
abilities: s.abilities || [],
|
|
96
|
+
generic_type_params: (s.generic_type_params || []).map((param) => ({ constraints: param.constraints || [] })),
|
|
97
|
+
fields: (s.fields || []).map((f) => ({
|
|
98
|
+
name: f.name,
|
|
99
|
+
type: f.type
|
|
100
|
+
}))
|
|
101
|
+
}));
|
|
102
|
+
return {
|
|
103
|
+
address: raw.address,
|
|
104
|
+
name: raw.name,
|
|
105
|
+
friends: raw.friends || [],
|
|
106
|
+
exposed_functions: exposedFunctions,
|
|
107
|
+
structs
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Parses visibility string to typed visibility.
|
|
112
|
+
*/
|
|
113
|
+
function parseVisibility(visibility) {
|
|
114
|
+
switch (visibility.toLowerCase()) {
|
|
115
|
+
case "public": return "public";
|
|
116
|
+
case "private": return "private";
|
|
117
|
+
case "friend": return "friend";
|
|
118
|
+
default: return "private";
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Fetches and parses a Move module ABI from the chain.
|
|
123
|
+
*
|
|
124
|
+
* **Caching behavior:**
|
|
125
|
+
* - **IMMUTABLE modules**: Cached permanently (staleness impossible)
|
|
126
|
+
* - **COMPATIBLE/upgradeable modules**: Cached with TTL (default 5 minutes)
|
|
127
|
+
*
|
|
128
|
+
* For upgradeable modules, the cache may become stale after upgrades.
|
|
129
|
+
* Use `clearAbiCache(moduleAddress)` after known upgrades, or set
|
|
130
|
+
* `useCache: false` to always fetch fresh data.
|
|
131
|
+
*
|
|
132
|
+
* @param context - ChainContext with client (must have move service)
|
|
133
|
+
* @param moduleAddress - Module address (hex or bech32)
|
|
134
|
+
* @param moduleName - Module name
|
|
135
|
+
* @param options - Fetch options
|
|
136
|
+
* @returns Parsed module ABI
|
|
137
|
+
*
|
|
138
|
+
* @example Basic usage
|
|
139
|
+
* ```typescript
|
|
140
|
+
* const abi = await getModuleAbi(ctx, '0x1', 'coin')
|
|
141
|
+
* console.log(abi.exposed_functions)
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* @example Handle upgradeable module
|
|
145
|
+
* ```typescript
|
|
146
|
+
* // After module upgrade, clear cache
|
|
147
|
+
* clearAbiCache('0x1')
|
|
148
|
+
*
|
|
149
|
+
* // Or bypass cache entirely
|
|
150
|
+
* const abi = await getModuleAbi(ctx, '0x1', 'coin', { useCache: false })
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
async function getModuleAbi(context, moduleAddress, moduleName, options = {}) {
|
|
154
|
+
const moveClient = context.client.move;
|
|
155
|
+
const { useCache = true, cacheTtl = DEFAULT_CACHE_TTL } = options;
|
|
156
|
+
if (useCache) {
|
|
157
|
+
const cached = getCachedAbi(moduleAddress, moduleName, cacheTtl);
|
|
158
|
+
if (cached) return cached;
|
|
159
|
+
}
|
|
160
|
+
const response = await moveClient.module({
|
|
161
|
+
address: moduleAddress,
|
|
162
|
+
moduleName
|
|
163
|
+
});
|
|
164
|
+
if (!response.module) throw new ContractError("move", 0, `Module not found: ${moduleAddress}::${moduleName}`);
|
|
165
|
+
const abiJson = response.module.abi;
|
|
166
|
+
if (!abiJson) throw new ContractError("move", 0, `Module ABI not available: ${moduleAddress}::${moduleName}`);
|
|
167
|
+
const abi = parseModuleAbi(abiJson);
|
|
168
|
+
cacheModuleAbi(moduleAddress, moduleName, abi, response.module.upgradePolicy === UpgradePolicy.IMMUTABLE);
|
|
169
|
+
return abi;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Fetches all modules from an address.
|
|
173
|
+
*
|
|
174
|
+
* @param context - ChainContext with client (must have move service)
|
|
175
|
+
* @param address - Account address
|
|
176
|
+
* @returns Array of module ABIs
|
|
177
|
+
*
|
|
178
|
+
* @example
|
|
179
|
+
* ```typescript
|
|
180
|
+
* const modules = await getModulesAbi(ctx, '0x1')
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
async function getModulesAbi(context, address) {
|
|
184
|
+
const response = await context.client.move.modules({ address });
|
|
185
|
+
const abis = [];
|
|
186
|
+
for (const mod of response.modules) if (mod.abi) try {
|
|
187
|
+
const abi = parseModuleAbi(mod.abi);
|
|
188
|
+
const isImmutable = mod.upgradePolicy === UpgradePolicy.IMMUTABLE;
|
|
189
|
+
cacheModuleAbi(address, mod.moduleName, abi, isImmutable);
|
|
190
|
+
abis.push(abi);
|
|
191
|
+
} catch {}
|
|
192
|
+
return abis;
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Finds a function in the module ABI by name.
|
|
196
|
+
*
|
|
197
|
+
* @param abi - Module ABI
|
|
198
|
+
* @param functionName - Function name to find
|
|
199
|
+
* @returns Function ABI or undefined
|
|
200
|
+
*/
|
|
201
|
+
function findFunction(abi, functionName) {
|
|
202
|
+
return abi.exposed_functions.find((fn) => fn.name === functionName);
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Finds a struct in the module ABI by name.
|
|
206
|
+
*
|
|
207
|
+
* @param abi - Module ABI
|
|
208
|
+
* @param structName - Struct name to find
|
|
209
|
+
* @returns Struct ABI or undefined
|
|
210
|
+
*/
|
|
211
|
+
function findStruct(abi, structName) {
|
|
212
|
+
return abi.structs.find((s) => s.name === structName);
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Gets all entry functions from the module ABI.
|
|
216
|
+
*
|
|
217
|
+
* @param abi - Module ABI
|
|
218
|
+
* @returns Array of entry function ABIs
|
|
219
|
+
*/
|
|
220
|
+
function getEntryFunctions(abi) {
|
|
221
|
+
return abi.exposed_functions.filter((fn) => fn.is_entry);
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Gets all view functions from the module ABI.
|
|
225
|
+
*
|
|
226
|
+
* @param abi - Module ABI
|
|
227
|
+
* @returns Array of view function ABIs
|
|
228
|
+
*/
|
|
229
|
+
function getViewFunctions(abi) {
|
|
230
|
+
return abi.exposed_functions.filter((fn) => fn.is_view);
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Checks if a function requires a signer parameter.
|
|
234
|
+
* Signer params are typically the first param with type '&signer' or 'signer'.
|
|
235
|
+
*
|
|
236
|
+
* @param fn - Function ABI
|
|
237
|
+
* @returns True if function requires signer
|
|
238
|
+
*/
|
|
239
|
+
function requiresSigner(fn) {
|
|
240
|
+
if (fn.params.length === 0) return false;
|
|
241
|
+
const firstParam = fn.params[0];
|
|
242
|
+
return firstParam === "&signer" || firstParam === "signer";
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Gets the non-signer parameters of a function.
|
|
246
|
+
*
|
|
247
|
+
* @param fn - Function ABI
|
|
248
|
+
* @returns Parameter types excluding signer
|
|
249
|
+
*/
|
|
250
|
+
function getNonSignerParams(fn) {
|
|
251
|
+
return fn.params.filter((p) => p !== "&signer" && p !== "signer");
|
|
252
|
+
}
|
|
253
|
+
//#endregion
|
|
254
|
+
//#region src/contracts/move/bcs.ts
|
|
255
|
+
/**
|
|
256
|
+
* Move BCS (Binary Canonical Serialization) Utilities
|
|
257
|
+
*
|
|
258
|
+
* Provides BCS encoding/decoding for Move function arguments and results.
|
|
259
|
+
* Based on @mysten/bcs with Initia-specific type extensions.
|
|
260
|
+
*/
|
|
261
|
+
/**
|
|
262
|
+
* Creates a BCS type for Move addresses (32 bytes).
|
|
263
|
+
* Accepts hex strings (0x...) or bech32 addresses (init1...).
|
|
264
|
+
*/
|
|
265
|
+
const initiaAddress = (options) => bcs.bytes(32, options).transform({
|
|
266
|
+
input: (val) => {
|
|
267
|
+
if (!val.startsWith("0x")) try {
|
|
268
|
+
val = AccAddress.toHex(val);
|
|
269
|
+
} catch {}
|
|
270
|
+
if (val.startsWith("0x")) val = val.slice(2);
|
|
271
|
+
val = val.padStart(64, "0");
|
|
272
|
+
if (!/^[0-9a-fA-F]+$/.test(val)) throw new Error(`Invalid Move address: ${val}`);
|
|
273
|
+
const bytes = new Uint8Array(32);
|
|
274
|
+
for (let i = 0; i < 32; i++) bytes[i] = parseInt(val.slice(i * 2, i * 2 + 2), 16);
|
|
275
|
+
return bytes;
|
|
276
|
+
},
|
|
277
|
+
output: (val) => {
|
|
278
|
+
return "0x" + Array.from(val).map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
279
|
+
}
|
|
280
|
+
});
|
|
281
|
+
/**
|
|
282
|
+
* Creates a BCS type for fixed_point32 (u64 with 32-bit fractional).
|
|
283
|
+
*/
|
|
284
|
+
const fixedPoint32 = (options) => bcs.u64(options).transform({
|
|
285
|
+
input: (val) => {
|
|
286
|
+
return BigInt(Math.floor(Number(val) * 4294967296)).toString();
|
|
287
|
+
},
|
|
288
|
+
output: (val) => {
|
|
289
|
+
return (Number(val) / 4294967296).toString();
|
|
290
|
+
}
|
|
291
|
+
});
|
|
292
|
+
/**
|
|
293
|
+
* Creates a BCS type for fixed_point64 (u128 with 64-bit fractional).
|
|
294
|
+
*/
|
|
295
|
+
const fixedPoint64 = (options) => bcs.u128(options).transform({
|
|
296
|
+
input: (val) => {
|
|
297
|
+
const wholePart = BigInt(Math.floor(Number(val)));
|
|
298
|
+
const fracPart = BigInt(Math.floor((Number(val) - Math.floor(Number(val))) * 0xde0b6b3a7640000));
|
|
299
|
+
const multiplier = BigInt("18446744073709551616");
|
|
300
|
+
return (wholePart * multiplier + fracPart * multiplier / BigInt(0xde0b6b3a7640000)).toString();
|
|
301
|
+
},
|
|
302
|
+
output: (val) => {
|
|
303
|
+
const n = BigInt(val);
|
|
304
|
+
const multiplier = BigInt("18446744073709551616");
|
|
305
|
+
const whole = n / multiplier;
|
|
306
|
+
const frac = Number(n % multiplier) / Number(multiplier);
|
|
307
|
+
return (Number(whole) + frac).toString();
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
/**
|
|
311
|
+
* Creates a BCS type for decimal128 (u128 with 18 decimal places).
|
|
312
|
+
*/
|
|
313
|
+
const decimal128 = (options) => bcs.u128(options).transform({
|
|
314
|
+
input: (val) => {
|
|
315
|
+
const multiplier = BigInt("1000000000000000000");
|
|
316
|
+
const parts = String(val).split(".");
|
|
317
|
+
const wholePart = BigInt(parts[0] || "0");
|
|
318
|
+
let fracPart = BigInt(0);
|
|
319
|
+
if (parts[1]) {
|
|
320
|
+
const fracStr = parts[1].padEnd(18, "0").slice(0, 18);
|
|
321
|
+
fracPart = BigInt(fracStr);
|
|
322
|
+
}
|
|
323
|
+
return (wholePart * multiplier + fracPart).toString();
|
|
324
|
+
},
|
|
325
|
+
output: (val) => {
|
|
326
|
+
const multiplier = BigInt("1000000000000000000");
|
|
327
|
+
const n = BigInt(val);
|
|
328
|
+
const whole = n / multiplier;
|
|
329
|
+
const frac = n % multiplier;
|
|
330
|
+
if (frac === BigInt(0)) return whole.toString();
|
|
331
|
+
return `${whole}.${frac.toString().padStart(18, "0").replace(/0+$/, "")}`;
|
|
332
|
+
}
|
|
333
|
+
});
|
|
334
|
+
/**
|
|
335
|
+
* Creates a BCS type for decimal256 (u256 with 18 decimal places).
|
|
336
|
+
*/
|
|
337
|
+
const decimal256 = (options) => bcs.u256(options).transform({
|
|
338
|
+
input: (val) => {
|
|
339
|
+
const multiplier = BigInt("1000000000000000000");
|
|
340
|
+
const parts = String(val).split(".");
|
|
341
|
+
const wholePart = BigInt(parts[0] || "0");
|
|
342
|
+
let fracPart = BigInt(0);
|
|
343
|
+
if (parts[1]) {
|
|
344
|
+
const fracStr = parts[1].padEnd(18, "0").slice(0, 18);
|
|
345
|
+
fracPart = BigInt(fracStr);
|
|
346
|
+
}
|
|
347
|
+
return (wholePart * multiplier + fracPart).toString();
|
|
348
|
+
},
|
|
349
|
+
output: (val) => {
|
|
350
|
+
const multiplier = BigInt("1000000000000000000");
|
|
351
|
+
const n = BigInt(val);
|
|
352
|
+
const whole = n / multiplier;
|
|
353
|
+
const frac = n % multiplier;
|
|
354
|
+
if (frac === BigInt(0)) return whole.toString();
|
|
355
|
+
return `${whole}.${frac.toString().padStart(18, "0").replace(/0+$/, "")}`;
|
|
356
|
+
}
|
|
357
|
+
});
|
|
358
|
+
/**
|
|
359
|
+
* Extended BCS object with Initia-specific types.
|
|
360
|
+
*/
|
|
361
|
+
const bcs$1 = {
|
|
362
|
+
...bcs,
|
|
363
|
+
address: initiaAddress,
|
|
364
|
+
object: initiaAddress,
|
|
365
|
+
fixed_point32: fixedPoint32,
|
|
366
|
+
fixed_point64: fixedPoint64,
|
|
367
|
+
decimal128,
|
|
368
|
+
decimal256
|
|
369
|
+
};
|
|
370
|
+
/**
|
|
371
|
+
* Parses a Move type string into a structured representation.
|
|
372
|
+
*
|
|
373
|
+
* @param typeStr - Move type string (e.g., 'vector<u8>', '0x1::coin::Coin<T>')
|
|
374
|
+
* @returns Parsed type structure
|
|
375
|
+
*
|
|
376
|
+
* @example
|
|
377
|
+
* ```typescript
|
|
378
|
+
* parseMoveType('u64') // { base: 'u64', typeArgs: [] }
|
|
379
|
+
* parseMoveType('vector<u8>') // { base: 'vector', typeArgs: [{ base: 'u8', typeArgs: [] }] }
|
|
380
|
+
* parseMoveType('0x1::option::Option<u64>') // { base: '0x1::option::Option', typeArgs: [...] }
|
|
381
|
+
* ```
|
|
382
|
+
*/
|
|
383
|
+
function parseMoveType(typeStr) {
|
|
384
|
+
typeStr = typeStr.trim();
|
|
385
|
+
const genericStart = typeStr.indexOf("<");
|
|
386
|
+
if (genericStart === -1) return {
|
|
387
|
+
base: typeStr,
|
|
388
|
+
typeArgs: []
|
|
389
|
+
};
|
|
390
|
+
const base = typeStr.slice(0, genericStart);
|
|
391
|
+
const argsStr = typeStr.slice(genericStart + 1, typeStr.lastIndexOf(">"));
|
|
392
|
+
const typeArgs = [];
|
|
393
|
+
let depth = 0;
|
|
394
|
+
let current = "";
|
|
395
|
+
for (const char of argsStr) if (char === "<") {
|
|
396
|
+
depth++;
|
|
397
|
+
current += char;
|
|
398
|
+
} else if (char === ">") {
|
|
399
|
+
depth--;
|
|
400
|
+
current += char;
|
|
401
|
+
} else if (char === "," && depth === 0) {
|
|
402
|
+
if (current.trim()) typeArgs.push(parseMoveType(current.trim()));
|
|
403
|
+
current = "";
|
|
404
|
+
} else current += char;
|
|
405
|
+
if (current.trim()) typeArgs.push(parseMoveType(current.trim()));
|
|
406
|
+
return {
|
|
407
|
+
base,
|
|
408
|
+
typeArgs
|
|
409
|
+
};
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* Gets a BCS type for a Move type string.
|
|
413
|
+
*
|
|
414
|
+
* @param moveType - Move type string
|
|
415
|
+
* @returns BCS type for serialization/deserialization
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* ```typescript
|
|
419
|
+
* const type = getBcsType('u64')
|
|
420
|
+
* const bytes = type.serialize(1000n).toBytes()
|
|
421
|
+
* ```
|
|
422
|
+
*/
|
|
423
|
+
function getBcsType(moveType) {
|
|
424
|
+
return resolveBcsType(parseMoveType(moveType));
|
|
425
|
+
}
|
|
426
|
+
function resolveBcsType(parsed) {
|
|
427
|
+
const { base, typeArgs } = parsed;
|
|
428
|
+
switch (base) {
|
|
429
|
+
case "bool": return bcs$1.bool();
|
|
430
|
+
case "u8": return bcs$1.u8();
|
|
431
|
+
case "u16": return bcs$1.u16();
|
|
432
|
+
case "u32": return bcs$1.u32();
|
|
433
|
+
case "u64": return bcs$1.u64();
|
|
434
|
+
case "u128": return bcs$1.u128();
|
|
435
|
+
case "u256": return bcs$1.u256();
|
|
436
|
+
case "address": return bcs$1.address();
|
|
437
|
+
case "signer": return bcs$1.address();
|
|
438
|
+
case "vector":
|
|
439
|
+
if (typeArgs.length !== 1) throw new Error(`vector requires exactly 1 type argument, got ${typeArgs.length}`);
|
|
440
|
+
if (typeArgs[0].base === "u8" && typeArgs[0].typeArgs.length === 0) return bcs$1.byteVector();
|
|
441
|
+
return bcs$1.vector(resolveBcsType(typeArgs[0]));
|
|
442
|
+
case "string":
|
|
443
|
+
case "0x1::string::String": return bcs$1.string();
|
|
444
|
+
case "0x1::option::Option":
|
|
445
|
+
if (typeArgs.length !== 1) throw new Error(`Option requires exactly 1 type argument, got ${typeArgs.length}`);
|
|
446
|
+
return bcs$1.option(resolveBcsType(typeArgs[0]));
|
|
447
|
+
case "0x1::fixed_point32::FixedPoint32": return bcs$1.fixed_point32();
|
|
448
|
+
case "0x1::fixed_point64::FixedPoint64": return bcs$1.fixed_point64();
|
|
449
|
+
case "0x1::decimal128::Decimal128": return bcs$1.decimal128();
|
|
450
|
+
case "0x1::decimal256::Decimal256": return bcs$1.decimal256();
|
|
451
|
+
case "0x1::object::Object":
|
|
452
|
+
case "0x1::object::ObjectCore": return bcs$1.address();
|
|
453
|
+
default:
|
|
454
|
+
if (base.includes("::")) return bcs$1.string();
|
|
455
|
+
throw new Error(`Unsupported Move type: ${base}`);
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
/**
|
|
459
|
+
* Encodes a single Move argument to BCS bytes.
|
|
460
|
+
*
|
|
461
|
+
* @param value - Value to encode
|
|
462
|
+
* @param moveType - Move type string
|
|
463
|
+
* @returns BCS encoded bytes
|
|
464
|
+
*
|
|
465
|
+
* @example
|
|
466
|
+
* ```typescript
|
|
467
|
+
* encodeMoveArg(1000n, 'u64') // Uint8Array
|
|
468
|
+
* encodeMoveArg('init1...', 'address') // Uint8Array
|
|
469
|
+
* encodeMoveArg([1, 2, 3], 'vector<u8>') // Uint8Array
|
|
470
|
+
* ```
|
|
471
|
+
*/
|
|
472
|
+
function encodeMoveArg(value, moveType) {
|
|
473
|
+
return getBcsType(moveType).serialize(value).toBytes();
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Encodes multiple Move arguments to BCS bytes.
|
|
477
|
+
*
|
|
478
|
+
* @param values - Values to encode
|
|
479
|
+
* @param moveTypes - Move type strings for each value
|
|
480
|
+
* @returns Array of BCS encoded bytes
|
|
481
|
+
*
|
|
482
|
+
* @example
|
|
483
|
+
* ```typescript
|
|
484
|
+
* encodeMoveArgs(
|
|
485
|
+
* ['init1...', 1000n],
|
|
486
|
+
* ['address', 'u64']
|
|
487
|
+
* )
|
|
488
|
+
* ```
|
|
489
|
+
*/
|
|
490
|
+
function encodeMoveArgs(values, moveTypes) {
|
|
491
|
+
if (values.length !== moveTypes.length) throw new Error(`Argument count mismatch: ${values.length} values, ${moveTypes.length} types`);
|
|
492
|
+
return values.map((value, i) => encodeMoveArg(value, moveTypes[i]));
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Decodes BCS bytes to a Move value.
|
|
496
|
+
*
|
|
497
|
+
* @param bytes - BCS encoded bytes
|
|
498
|
+
* @param moveType - Move type string
|
|
499
|
+
* @returns Decoded value
|
|
500
|
+
*
|
|
501
|
+
* @example
|
|
502
|
+
* ```typescript
|
|
503
|
+
* decodeMoveResult(bytes, 'u64') // bigint string
|
|
504
|
+
* decodeMoveResult(bytes, 'address') // hex string
|
|
505
|
+
* decodeMoveResult(bytes, 'bool') // boolean
|
|
506
|
+
* ```
|
|
507
|
+
*/
|
|
508
|
+
function decodeMoveResult(bytes, moveType) {
|
|
509
|
+
return getBcsType(moveType).parse(bytes);
|
|
510
|
+
}
|
|
511
|
+
/**
|
|
512
|
+
* Decodes multiple BCS values from a concatenated byte array.
|
|
513
|
+
* Note: This assumes the values are simply concatenated without length prefixes.
|
|
514
|
+
* For proper multi-value decoding, use separate byte arrays.
|
|
515
|
+
*
|
|
516
|
+
* @param bytesArray - Array of BCS encoded bytes
|
|
517
|
+
* @param moveTypes - Move type strings for each value
|
|
518
|
+
* @returns Array of decoded values
|
|
519
|
+
*/
|
|
520
|
+
function decodeMoveResults(bytesArray, moveTypes) {
|
|
521
|
+
if (bytesArray.length !== moveTypes.length) throw new Error(`Result count mismatch: ${bytesArray.length} results, ${moveTypes.length} types`);
|
|
522
|
+
return bytesArray.map((bytes, i) => decodeMoveResult(bytes, moveTypes[i]));
|
|
523
|
+
}
|
|
524
|
+
/**
|
|
525
|
+
* Converts Uint8Array to a hex string.
|
|
526
|
+
*/
|
|
527
|
+
function bytesToHex(bytes) {
|
|
528
|
+
return "0x" + Array.from(bytes).map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
529
|
+
}
|
|
530
|
+
//#endregion
|
|
531
|
+
export { getNonSignerParams as _, encodeMoveArg as a, requiresSigner as b, parseMoveType as c, findFunction as d, findStruct as f, getModulesAbi as g, getModuleAbi as h, decodeMoveResults as i, cacheModuleAbi as l, getEntryFunctions as m, bytesToHex as n, encodeMoveArgs as o, getCachedAbi as p, decodeMoveResult as r, getBcsType as s, bcs$1 as t, clearAbiCache as u, getViewFunctions as v, parseModuleAbi as y };
|
|
532
|
+
|
|
533
|
+
//# sourceMappingURL=bcs-DiRcL4n9.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bcs-DiRcL4n9.mjs","names":["mystenBcs","bcs"],"sources":["../src/contracts/move/abi-fetcher.ts","../src/contracts/move/bcs.ts"],"sourcesContent":["/**\n * Move Module ABI Fetcher\n *\n * Provides utilities to fetch and parse Move module ABIs from the chain.\n * Uses gRPC to query module info and parse the JSON ABI string.\n *\n * ## Caching Behavior\n *\n * ABIs are cached based on the module's upgrade policy:\n *\n * - **IMMUTABLE modules**: Cached permanently (no staleness possible)\n * - **COMPATIBLE modules**: Cached with TTL (default 5 minutes)\n *\n * For upgradeable modules, the cache may become stale after upgrades.\n * Options to handle this:\n * - Use `useCache: false` to always fetch fresh data\n * - Call `clearAbiCache(moduleAddress)` after known upgrades\n * - Reduce `cacheTtl` for frequently upgraded modules\n */\n\nimport type { Client } from '@connectrpc/connect'\nimport type { Query as MoveQuery } from '@buf/initia-labs_initia.bufbuild_es/initia/move/v1/query_pb'\nimport { UpgradePolicy } from '@buf/initia-labs_initia.bufbuild_es/initia/move/v1/types_pb'\nimport type { HasMoveService } from '../../client/types'\nimport type {\n MoveModuleAbi,\n MoveFunctionAbi,\n MoveStructAbi,\n MoveFieldAbi,\n MoveGenericTypeParam,\n MoveFunctionVisibility,\n} from './types'\nimport { ParseError, ContractError } from '../../errors'\n\n// =============================================================================\n// Types\n// =============================================================================\n\n/**\n * Move gRPC query client type.\n */\nexport type MoveQueryClient = Client<typeof MoveQuery>\n\n/**\n * Cache key for module ABI.\n */\ntype CacheKey = `${string}::${string}`\n\n/**\n * Cached ABI entry with metadata.\n */\ninterface CacheEntry {\n abi: MoveModuleAbi\n timestamp: number\n /** If true, cache never expires (IMMUTABLE modules) */\n permanent: boolean\n}\n\n// =============================================================================\n// ABI Cache\n// =============================================================================\n\n/** In-memory ABI cache */\nconst abiCache = new Map<CacheKey, CacheEntry>()\n\n/** Default cache TTL (5 minutes) */\nconst DEFAULT_CACHE_TTL = 5 * 60 * 1000\n\n/**\n * Gets the cache key for a module.\n */\nfunction getCacheKey(moduleAddress: string, moduleName: string): CacheKey {\n return `${moduleAddress.toLowerCase()}::${moduleName}`\n}\n\n/**\n * Gets a cached ABI if available and not expired.\n *\n * @param moduleAddress - Module address\n * @param moduleName - Module name\n * @param ttl - Cache TTL in milliseconds (ignored for IMMUTABLE modules)\n * @returns Cached ABI or undefined\n */\nexport function getCachedAbi(\n moduleAddress: string,\n moduleName: string,\n ttl: number = DEFAULT_CACHE_TTL\n): MoveModuleAbi | undefined {\n const key = getCacheKey(moduleAddress, moduleName)\n const entry = abiCache.get(key)\n\n if (!entry) return undefined\n\n // Permanent cache (IMMUTABLE modules) never expires\n if (entry.permanent) {\n return entry.abi\n }\n\n // Check if cache is expired for upgradeable modules\n if (Date.now() - entry.timestamp > ttl) {\n abiCache.delete(key)\n return undefined\n }\n\n return entry.abi\n}\n\n/**\n * Caches a module ABI.\n *\n * @param moduleAddress - Module address\n * @param moduleName - Module name\n * @param abi - Module ABI to cache\n * @param permanent - If true, cache never expires (for IMMUTABLE modules)\n */\nexport function cacheModuleAbi(\n moduleAddress: string,\n moduleName: string,\n abi: MoveModuleAbi,\n permanent: boolean = false\n): void {\n const key = getCacheKey(moduleAddress, moduleName)\n abiCache.set(key, {\n abi,\n timestamp: Date.now(),\n permanent,\n })\n}\n\n/**\n * Clears the ABI cache.\n * Optionally clear only entries for a specific address.\n *\n * @param moduleAddress - Optional address to clear cache for\n */\nexport function clearAbiCache(moduleAddress?: string): void {\n if (moduleAddress) {\n const prefix = moduleAddress.toLowerCase() + '::'\n for (const key of abiCache.keys()) {\n if (key.startsWith(prefix)) {\n abiCache.delete(key)\n }\n }\n } else {\n abiCache.clear()\n }\n}\n\n// =============================================================================\n// ABI Parsing\n// =============================================================================\n\n/**\n * Raw ABI JSON structure from the chain.\n * This matches the JSON format in Module.abi string.\n */\ninterface RawModuleAbi {\n address: string\n name: string\n friends: string[]\n exposed_functions: RawFunctionAbi[]\n structs: RawStructAbi[]\n}\n\ninterface RawFunctionAbi {\n name: string\n visibility: string\n is_entry: boolean\n is_view: boolean\n generic_type_params: RawGenericTypeParam[]\n params: string[]\n return: string[]\n}\n\ninterface RawStructAbi {\n name: string\n is_native: boolean\n abilities: string[]\n generic_type_params: RawGenericTypeParam[]\n fields: RawFieldAbi[]\n}\n\ninterface RawFieldAbi {\n name: string\n type: string\n}\n\ninterface RawGenericTypeParam {\n constraints: string[]\n}\n\n/**\n * Parses a raw ABI JSON string into a typed MoveModuleAbi.\n *\n * @param abiJson - JSON string from Module.abi\n * @returns Parsed module ABI\n * @throws Error if JSON parsing fails or ABI structure is invalid\n *\n * @example\n * ```typescript\n * const abi = parseModuleAbi('{\"address\":\"0x1\",\"name\":\"coin\",...}')\n * ```\n */\nexport function parseModuleAbi(abiJson: string): MoveModuleAbi {\n let raw: RawModuleAbi\n\n try {\n raw = JSON.parse(abiJson) as RawModuleAbi\n } catch (error) {\n throw new ParseError(\n 'MoveModuleABI',\n `Invalid JSON: ${error instanceof Error ? error.message : String(error)}`\n )\n }\n\n // Validate required fields\n if (!raw.address || !raw.name) {\n throw new ParseError('MoveModuleABI', 'Missing required field: address or name')\n }\n\n // Parse exposed functions\n const exposedFunctions: MoveFunctionAbi[] = (raw.exposed_functions || []).map(\n (fn): MoveFunctionAbi => ({\n name: fn.name,\n visibility: parseVisibility(fn.visibility),\n is_entry: fn.is_entry ?? false,\n is_view: fn.is_view ?? false,\n generic_type_params: (fn.generic_type_params || []).map(\n (param): MoveGenericTypeParam => ({\n constraints: param.constraints || [],\n })\n ),\n params: fn.params || [],\n return: fn.return || [],\n })\n )\n\n // Parse structs\n const structs: MoveStructAbi[] = (raw.structs || []).map(\n (s): MoveStructAbi => ({\n name: s.name,\n is_native: s.is_native ?? false,\n abilities: s.abilities || [],\n generic_type_params: (s.generic_type_params || []).map(\n (param): MoveGenericTypeParam => ({\n constraints: param.constraints || [],\n })\n ),\n fields: (s.fields || []).map(\n (f): MoveFieldAbi => ({\n name: f.name,\n type: f.type,\n })\n ),\n })\n )\n\n return {\n address: raw.address,\n name: raw.name,\n friends: raw.friends || [],\n exposed_functions: exposedFunctions,\n structs,\n }\n}\n\n/**\n * Parses visibility string to typed visibility.\n */\nfunction parseVisibility(visibility: string): MoveFunctionVisibility {\n switch (visibility.toLowerCase()) {\n case 'public':\n return 'public'\n case 'private':\n return 'private'\n case 'friend':\n return 'friend'\n default:\n return 'private'\n }\n}\n\n// =============================================================================\n// ABI Fetching\n// =============================================================================\n\n/**\n * Options for fetching module ABI.\n */\nexport interface FetchAbiOptions {\n /** Use cached ABI if available (default: true) */\n useCache?: boolean\n /** Cache TTL in milliseconds (default: 5 minutes) */\n cacheTtl?: number\n}\n\n/**\n * Fetches and parses a Move module ABI from the chain.\n *\n * **Caching behavior:**\n * - **IMMUTABLE modules**: Cached permanently (staleness impossible)\n * - **COMPATIBLE/upgradeable modules**: Cached with TTL (default 5 minutes)\n *\n * For upgradeable modules, the cache may become stale after upgrades.\n * Use `clearAbiCache(moduleAddress)` after known upgrades, or set\n * `useCache: false` to always fetch fresh data.\n *\n * @param context - ChainContext with client (must have move service)\n * @param moduleAddress - Module address (hex or bech32)\n * @param moduleName - Module name\n * @param options - Fetch options\n * @returns Parsed module ABI\n *\n * @example Basic usage\n * ```typescript\n * const abi = await getModuleAbi(ctx, '0x1', 'coin')\n * console.log(abi.exposed_functions)\n * ```\n *\n * @example Handle upgradeable module\n * ```typescript\n * // After module upgrade, clear cache\n * clearAbiCache('0x1')\n *\n * // Or bypass cache entirely\n * const abi = await getModuleAbi(ctx, '0x1', 'coin', { useCache: false })\n * ```\n */\nexport async function getModuleAbi(\n context: HasMoveService,\n moduleAddress: string,\n moduleName: string,\n options: FetchAbiOptions = {}\n): Promise<MoveModuleAbi> {\n const moveClient = context.client.move\n const { useCache = true, cacheTtl = DEFAULT_CACHE_TTL } = options\n\n // Check cache first\n if (useCache) {\n const cached = getCachedAbi(moduleAddress, moduleName, cacheTtl)\n if (cached) {\n return cached\n }\n }\n\n // Fetch from chain\n const response = await moveClient.module({\n address: moduleAddress,\n moduleName: moduleName,\n })\n\n if (!response.module) {\n throw new ContractError('move', 0, `Module not found: ${moduleAddress}::${moduleName}`)\n }\n\n const abiJson = response.module.abi\n if (!abiJson) {\n throw new ContractError('move', 0, `Module ABI not available: ${moduleAddress}::${moduleName}`)\n }\n\n // Parse ABI\n const abi = parseModuleAbi(abiJson)\n\n // Cache the result - IMMUTABLE modules are cached permanently\n const isImmutable = response.module.upgradePolicy === UpgradePolicy.IMMUTABLE\n cacheModuleAbi(moduleAddress, moduleName, abi, isImmutable)\n\n return abi\n}\n\n/**\n * Fetches all modules from an address.\n *\n * @param context - ChainContext with client (must have move service)\n * @param address - Account address\n * @returns Array of module ABIs\n *\n * @example\n * ```typescript\n * const modules = await getModulesAbi(ctx, '0x1')\n * ```\n */\nexport async function getModulesAbi(\n context: HasMoveService,\n address: string\n): Promise<MoveModuleAbi[]> {\n const moveClient = context.client.move\n const response = await moveClient.modules({\n address,\n })\n\n const abis: MoveModuleAbi[] = []\n\n for (const mod of response.modules) {\n if (mod.abi) {\n try {\n const abi = parseModuleAbi(mod.abi)\n const isImmutable = mod.upgradePolicy === UpgradePolicy.IMMUTABLE\n cacheModuleAbi(address, mod.moduleName, abi, isImmutable)\n abis.push(abi)\n } catch {\n // Skip modules with invalid ABI - silent failure for library usage\n }\n }\n }\n\n return abis\n}\n\n// =============================================================================\n// ABI Utilities\n// =============================================================================\n\n/**\n * Finds a function in the module ABI by name.\n *\n * @param abi - Module ABI\n * @param functionName - Function name to find\n * @returns Function ABI or undefined\n */\nexport function findFunction(\n abi: MoveModuleAbi,\n functionName: string\n): MoveFunctionAbi | undefined {\n return abi.exposed_functions.find(fn => fn.name === functionName)\n}\n\n/**\n * Finds a struct in the module ABI by name.\n *\n * @param abi - Module ABI\n * @param structName - Struct name to find\n * @returns Struct ABI or undefined\n */\nexport function findStruct(abi: MoveModuleAbi, structName: string): MoveStructAbi | undefined {\n return abi.structs.find(s => s.name === structName)\n}\n\n/**\n * Gets all entry functions from the module ABI.\n *\n * @param abi - Module ABI\n * @returns Array of entry function ABIs\n */\nexport function getEntryFunctions(abi: MoveModuleAbi): MoveFunctionAbi[] {\n return abi.exposed_functions.filter(fn => fn.is_entry)\n}\n\n/**\n * Gets all view functions from the module ABI.\n *\n * @param abi - Module ABI\n * @returns Array of view function ABIs\n */\nexport function getViewFunctions(abi: MoveModuleAbi): MoveFunctionAbi[] {\n return abi.exposed_functions.filter(fn => fn.is_view)\n}\n\n/**\n * Checks if a function requires a signer parameter.\n * Signer params are typically the first param with type '&signer' or 'signer'.\n *\n * @param fn - Function ABI\n * @returns True if function requires signer\n */\nexport function requiresSigner(fn: MoveFunctionAbi): boolean {\n if (fn.params.length === 0) return false\n const firstParam = fn.params[0]\n return firstParam === '&signer' || firstParam === 'signer'\n}\n\n/**\n * Gets the non-signer parameters of a function.\n *\n * @param fn - Function ABI\n * @returns Parameter types excluding signer\n */\nexport function getNonSignerParams(fn: MoveFunctionAbi): string[] {\n return fn.params.filter(p => p !== '&signer' && p !== 'signer')\n}\n","/**\n * Move BCS (Binary Canonical Serialization) Utilities\n *\n * Provides BCS encoding/decoding for Move function arguments and results.\n * Based on @mysten/bcs with Initia-specific type extensions.\n */\n\nimport { bcs as mystenBcs, type BcsType, type BcsTypeOptions } from '@mysten/bcs'\nimport { AccAddress } from '../../util/address'\n\n// =============================================================================\n// Initia-Specific BCS Types\n// =============================================================================\n\n/**\n * Creates a BCS type for Move addresses (32 bytes).\n * Accepts hex strings (0x...) or bech32 addresses (init1...).\n */\nconst initiaAddress = (options?: BcsTypeOptions<Uint8Array, Iterable<number>>) =>\n mystenBcs.bytes(32, options).transform({\n input: (val: string) => {\n // Convert bech32 to hex if needed (any prefix: init1, noble1, cosmos1, ...)\n if (!val.startsWith('0x')) {\n try {\n val = AccAddress.toHex(val)\n } catch {\n // Not bech32 — assume bare hex, validated below\n }\n }\n\n // Remove 0x prefix and pad to 64 hex chars (32 bytes)\n if (val.startsWith('0x')) {\n val = val.slice(2)\n }\n val = val.padStart(64, '0')\n\n if (!/^[0-9a-fA-F]+$/.test(val)) {\n throw new Error(`Invalid Move address: ${val}`)\n }\n\n // Convert hex to bytes\n const bytes = new Uint8Array(32)\n for (let i = 0; i < 32; i++) {\n bytes[i] = parseInt(val.slice(i * 2, i * 2 + 2), 16)\n }\n return bytes\n },\n output: val => {\n const hex = Array.from<number>(val)\n .map(b => b.toString(16).padStart(2, '0'))\n .join('')\n return '0x' + hex\n },\n })\n\n/**\n * Creates a BCS type for fixed_point32 (u64 with 32-bit fractional).\n */\nconst fixedPoint32 = (options?: BcsTypeOptions<string, string | number | bigint>) =>\n mystenBcs.u64(options).transform({\n input: (val: number | string) => {\n const n = BigInt(Math.floor(Number(val) * 4294967296))\n return n.toString()\n },\n output: val => {\n return (Number(val) / 4294967296).toString()\n },\n })\n\n/**\n * Creates a BCS type for fixed_point64 (u128 with 64-bit fractional).\n */\nconst fixedPoint64 = (options?: BcsTypeOptions<string, string | number | bigint>) =>\n mystenBcs.u128(options).transform({\n input: (val: number | string) => {\n // Use BigInt for precision\n const wholePart = BigInt(Math.floor(Number(val)))\n const fracPart = BigInt(Math.floor((Number(val) - Math.floor(Number(val))) * 1e18))\n const multiplier = BigInt('18446744073709551616') // 2^64\n return (wholePart * multiplier + (fracPart * multiplier) / BigInt(1e18)).toString()\n },\n output: val => {\n const n = BigInt(val)\n const multiplier = BigInt('18446744073709551616')\n const whole = n / multiplier\n const frac = Number(n % multiplier) / Number(multiplier)\n return (Number(whole) + frac).toString()\n },\n })\n\n/**\n * Creates a BCS type for decimal128 (u128 with 18 decimal places).\n */\nconst decimal128 = (options?: BcsTypeOptions<string, string | number | bigint>) =>\n mystenBcs.u128(options).transform({\n input: (val: number | string) => {\n const multiplier = BigInt('1000000000000000000') // 10^18\n const parts = String(val).split('.')\n const wholePart = BigInt(parts[0] || '0')\n let fracPart = BigInt(0)\n if (parts[1]) {\n const fracStr = parts[1].padEnd(18, '0').slice(0, 18)\n fracPart = BigInt(fracStr)\n }\n return (wholePart * multiplier + fracPart).toString()\n },\n output: val => {\n const multiplier = BigInt('1000000000000000000')\n const n = BigInt(val)\n const whole = n / multiplier\n const frac = n % multiplier\n if (frac === BigInt(0)) {\n return whole.toString()\n }\n const fracStr = frac.toString().padStart(18, '0').replace(/0+$/, '')\n return `${whole}.${fracStr}`\n },\n })\n\n/**\n * Creates a BCS type for decimal256 (u256 with 18 decimal places).\n */\nconst decimal256 = (options?: BcsTypeOptions<string, string | number | bigint>) =>\n mystenBcs.u256(options).transform({\n input: (val: number | string) => {\n const multiplier = BigInt('1000000000000000000')\n const parts = String(val).split('.')\n const wholePart = BigInt(parts[0] || '0')\n let fracPart = BigInt(0)\n if (parts[1]) {\n const fracStr = parts[1].padEnd(18, '0').slice(0, 18)\n fracPart = BigInt(fracStr)\n }\n return (wholePart * multiplier + fracPart).toString()\n },\n output: val => {\n const multiplier = BigInt('1000000000000000000')\n const n = BigInt(val)\n const whole = n / multiplier\n const frac = n % multiplier\n if (frac === BigInt(0)) {\n return whole.toString()\n }\n const fracStr = frac.toString().padStart(18, '0').replace(/0+$/, '')\n return `${whole}.${fracStr}`\n },\n })\n\n// =============================================================================\n// Combined BCS Object\n// =============================================================================\n\n/**\n * Extended BCS object with Initia-specific types.\n */\nexport const bcs: typeof mystenBcs & {\n address: typeof initiaAddress\n object: typeof initiaAddress\n fixed_point32: typeof fixedPoint32\n fixed_point64: typeof fixedPoint64\n decimal128: typeof decimal128\n decimal256: typeof decimal256\n} = {\n ...mystenBcs,\n address: initiaAddress,\n object: initiaAddress,\n fixed_point32: fixedPoint32,\n fixed_point64: fixedPoint64,\n decimal128: decimal128,\n decimal256: decimal256,\n}\n\n// =============================================================================\n// Move Type String Parsing\n// =============================================================================\n\n/**\n * Parsed Move type representation.\n */\nexport interface ParsedMoveType {\n /** Base type name (e.g., 'vector', 'u64', 'address') */\n base: string\n /** Type arguments for generic types */\n typeArgs: ParsedMoveType[]\n}\n\n/**\n * Parses a Move type string into a structured representation.\n *\n * @param typeStr - Move type string (e.g., 'vector<u8>', '0x1::coin::Coin<T>')\n * @returns Parsed type structure\n *\n * @example\n * ```typescript\n * parseMoveType('u64') // { base: 'u64', typeArgs: [] }\n * parseMoveType('vector<u8>') // { base: 'vector', typeArgs: [{ base: 'u8', typeArgs: [] }] }\n * parseMoveType('0x1::option::Option<u64>') // { base: '0x1::option::Option', typeArgs: [...] }\n * ```\n */\nexport function parseMoveType(typeStr: string): ParsedMoveType {\n typeStr = typeStr.trim()\n\n // Find the first '<' that starts type arguments\n const genericStart = typeStr.indexOf('<')\n\n if (genericStart === -1) {\n // Simple type without generics\n return { base: typeStr, typeArgs: [] }\n }\n\n // Extract base type and type arguments\n const base = typeStr.slice(0, genericStart)\n const argsStr = typeStr.slice(genericStart + 1, typeStr.lastIndexOf('>'))\n\n // Parse type arguments (handle nested generics)\n const typeArgs: ParsedMoveType[] = []\n let depth = 0\n let current = ''\n\n for (const char of argsStr) {\n if (char === '<') {\n depth++\n current += char\n } else if (char === '>') {\n depth--\n current += char\n } else if (char === ',' && depth === 0) {\n if (current.trim()) {\n typeArgs.push(parseMoveType(current.trim()))\n }\n current = ''\n } else {\n current += char\n }\n }\n\n if (current.trim()) {\n typeArgs.push(parseMoveType(current.trim()))\n }\n\n return { base, typeArgs }\n}\n\n// =============================================================================\n// BCS Type Resolution\n// =============================================================================\n\n/**\n * Gets a BCS type for a Move type string.\n *\n * @param moveType - Move type string\n * @returns BCS type for serialization/deserialization\n *\n * @example\n * ```typescript\n * const type = getBcsType('u64')\n * const bytes = type.serialize(1000n).toBytes()\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function getBcsType(moveType: string): BcsType<any, any> {\n const parsed = parseMoveType(moveType)\n return resolveBcsType(parsed)\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction resolveBcsType(parsed: ParsedMoveType): BcsType<any, any> {\n const { base, typeArgs } = parsed\n\n // Primitive types\n switch (base) {\n case 'bool':\n return bcs.bool()\n case 'u8':\n return bcs.u8()\n case 'u16':\n return bcs.u16()\n case 'u32':\n return bcs.u32()\n case 'u64':\n return bcs.u64()\n case 'u128':\n return bcs.u128()\n case 'u256':\n return bcs.u256()\n case 'address':\n return bcs.address()\n case 'signer':\n // Signer is encoded as address\n return bcs.address()\n case 'vector':\n if (typeArgs.length !== 1) {\n throw new Error(`vector requires exactly 1 type argument, got ${typeArgs.length}`)\n }\n // Special case: vector<u8> is more efficient as byteVector\n if (typeArgs[0].base === 'u8' && typeArgs[0].typeArgs.length === 0) {\n return bcs.byteVector()\n }\n return bcs.vector(resolveBcsType(typeArgs[0]))\n case 'string':\n case '0x1::string::String':\n return bcs.string()\n case '0x1::option::Option':\n if (typeArgs.length !== 1) {\n throw new Error(`Option requires exactly 1 type argument, got ${typeArgs.length}`)\n }\n return bcs.option(resolveBcsType(typeArgs[0]))\n case '0x1::fixed_point32::FixedPoint32':\n return bcs.fixed_point32()\n case '0x1::fixed_point64::FixedPoint64':\n return bcs.fixed_point64()\n case '0x1::decimal128::Decimal128':\n return bcs.decimal128()\n case '0x1::decimal256::Decimal256':\n return bcs.decimal256()\n case '0x1::object::Object':\n case '0x1::object::ObjectCore':\n return bcs.address()\n default:\n // For struct types without specific handling, treat as opaque bytes\n // This is a fallback - specific struct types should be handled by the caller\n if (base.includes('::')) {\n // Unknown module type - return string for now\n // In practice, the caller should provide custom handling\n return bcs.string()\n }\n throw new Error(`Unsupported Move type: ${base}`)\n }\n}\n\n// =============================================================================\n// Encoding/Decoding Functions\n// =============================================================================\n\n/**\n * Encodes a single Move argument to BCS bytes.\n *\n * @param value - Value to encode\n * @param moveType - Move type string\n * @returns BCS encoded bytes\n *\n * @example\n * ```typescript\n * encodeMoveArg(1000n, 'u64') // Uint8Array\n * encodeMoveArg('init1...', 'address') // Uint8Array\n * encodeMoveArg([1, 2, 3], 'vector<u8>') // Uint8Array\n * ```\n */\nexport function encodeMoveArg(value: unknown, moveType: string): Uint8Array {\n const bcsType = getBcsType(moveType)\n return bcsType.serialize(value).toBytes()\n}\n\n/**\n * Encodes multiple Move arguments to BCS bytes.\n *\n * @param values - Values to encode\n * @param moveTypes - Move type strings for each value\n * @returns Array of BCS encoded bytes\n *\n * @example\n * ```typescript\n * encodeMoveArgs(\n * ['init1...', 1000n],\n * ['address', 'u64']\n * )\n * ```\n */\nexport function encodeMoveArgs(values: unknown[], moveTypes: string[]): Uint8Array[] {\n if (values.length !== moveTypes.length) {\n throw new Error(`Argument count mismatch: ${values.length} values, ${moveTypes.length} types`)\n }\n return values.map((value, i) => encodeMoveArg(value, moveTypes[i]))\n}\n\n/**\n * Decodes BCS bytes to a Move value.\n *\n * @param bytes - BCS encoded bytes\n * @param moveType - Move type string\n * @returns Decoded value\n *\n * @example\n * ```typescript\n * decodeMoveResult(bytes, 'u64') // bigint string\n * decodeMoveResult(bytes, 'address') // hex string\n * decodeMoveResult(bytes, 'bool') // boolean\n * ```\n */\nexport function decodeMoveResult(bytes: Uint8Array, moveType: string): unknown {\n const bcsType = getBcsType(moveType)\n return bcsType.parse(bytes)\n}\n\n/**\n * Decodes multiple BCS values from a concatenated byte array.\n * Note: This assumes the values are simply concatenated without length prefixes.\n * For proper multi-value decoding, use separate byte arrays.\n *\n * @param bytesArray - Array of BCS encoded bytes\n * @param moveTypes - Move type strings for each value\n * @returns Array of decoded values\n */\nexport function decodeMoveResults(bytesArray: Uint8Array[], moveTypes: string[]): unknown[] {\n if (bytesArray.length !== moveTypes.length) {\n throw new Error(\n `Result count mismatch: ${bytesArray.length} results, ${moveTypes.length} types`\n )\n }\n return bytesArray.map((bytes, i) => decodeMoveResult(bytes, moveTypes[i]))\n}\n\n// =============================================================================\n// Utility Functions\n// =============================================================================\n\nexport { hexToBytes } from '../../util/hex'\n\n/**\n * Converts Uint8Array to a hex string.\n */\nexport function bytesToHex(bytes: Uint8Array): string {\n return (\n '0x' +\n Array.from(bytes)\n .map(b => b.toString(16).padStart(2, '0'))\n .join('')\n )\n}\n"],"mappings":"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"}
|