@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 @@
|
|
|
1
|
+
{"version":3,"file":"contract-Dpvu4wLO.mjs","names":["Message"],"sources":["../src/contracts/move/contract.ts"],"sourcesContent":["/**\n * Move Contract Factory and Helpers\n *\n * Provides Move module contract interactions via gRPC.\n * Supports entry functions, view functions, resources, and table queries.\n */\n\nimport { create } from '@bufbuild/protobuf'\nimport {\n MsgExecuteJSONSchema,\n MsgExecuteSchema,\n MsgPublishSchema,\n MsgScriptSchema,\n MsgScriptJSONSchema,\n type MsgExecuteJSON,\n type MsgPublish,\n type MsgScript,\n type MsgScriptJSON,\n} from '@buf/initia-labs_initia.bufbuild_es/initia/move/v1/tx_pb'\nimport { UpgradePolicy } from '@buf/initia-labs_initia.bufbuild_es/initia/move/v1/types_pb'\n\nimport { Message } from '../../msgs/types'\nimport type { HasMoveService } from '../../client/types'\nimport type { TokenInfo } from '../types'\nimport { parseUnits, formatUnits } from '../utils'\nimport { ContractError } from '../errors'\nimport { tryDecodeBech32 } from '../../util/address'\n\nimport type {\n MoveContract,\n MoveModuleAbi,\n MoveCallOptions,\n MoveExecuteProxy,\n MoveViewProxy,\n PublishModuleOptions,\n ExecuteScriptOptions,\n BcsScriptOptions,\n ReadonlyMoveModuleAbi,\n TypedMoveContract,\n BuildMoveExecuteOptions,\n BuildMoveViewOptions,\n} from './types'\nimport { getModuleAbi, findFunction, getNonSignerParams, type MoveQueryClient } from './abi-fetcher'\nimport { encodeMoveArgs, parseMoveType, type ParsedMoveType } from './bcs'\nimport { AccAddress } from '../../util/address'\nimport { jsonStringifyArg } from '../../util/json'\n\n// =============================================================================\n// Types\n// =============================================================================\n\n/**\n * Options for creating a Move contract instance.\n */\nexport interface CreateMoveContractOptions {\n /** Pre-fetched ABI (skips gRPC fetch if provided) */\n abi?: MoveModuleAbi\n /** Use cached ABI (default: true) */\n useCache?: boolean\n /** Cache TTL in milliseconds (default: 5 minutes) */\n cacheTtl?: number\n}\n\n// =============================================================================\n// Input Validation\n// =============================================================================\n\n/** Valid Move identifier pattern: starts with letter or underscore, contains alphanumeric and underscore */\nconst MOVE_IDENTIFIER_REGEX = /^[a-zA-Z_][a-zA-Z0-9_]*$/\n\n/**\n * Validates that an address is in a valid format (EVM hex or bech32).\n * @throws Error if address format is invalid\n */\nfunction validateModuleAddress(address: string): void {\n // Check EVM format (0x...)\n if (address.startsWith('0x')) {\n // For Move, we allow shorter hex addresses like 0x1\n if (!/^0x[0-9a-fA-F]+$/.test(address)) {\n throw new Error(\n `Invalid module address format: ${address}. ` + `Expected 0x followed by hex characters.`\n )\n }\n return\n }\n\n // Check bech32 format\n if (!tryDecodeBech32(address)) {\n throw new Error(\n `Invalid module address: ${address}. ` + `Expected EVM hex (0x...) or bech32 format.`\n )\n }\n}\n\n/**\n * Validates that a module name is a valid Move identifier.\n * @throws Error if module name is invalid\n */\nfunction validateModuleName(name: string): void {\n if (!name) {\n throw new Error('Module name cannot be empty')\n }\n if (!MOVE_IDENTIFIER_REGEX.test(name)) {\n throw new Error(\n `Invalid module name: ${name}. ` +\n `Must start with a letter or underscore and contain only alphanumeric characters and underscores.`\n )\n }\n}\n\n// =============================================================================\n// Arg Conversion Helpers\n// =============================================================================\n\n/**\n * Checks if a Move param type is address-like (address or Object<T>).\n */\nfunction isAddressLikeType(moveType: string): boolean {\n return moveType === 'address' || moveType.startsWith('0x1::object::Object')\n}\n\n/**\n * Move unsigned integer types with max values for range validation in the JSON fallback path.\n * KNOWN_BCS_BASES covers all BCS-encodable types and gates BCS-vs-JSON path selection.\n */\nconst UINT_MAX = new Map<string, bigint>([\n ['u8', (1n << 8n) - 1n],\n ['u16', (1n << 16n) - 1n],\n ['u32', (1n << 32n) - 1n],\n ['u64', (1n << 64n) - 1n],\n ['u128', (1n << 128n) - 1n],\n ['u256', (1n << 256n) - 1n],\n])\n\n/**\n * Converts a single arg to a JSON string for the Move VM.\n *\n * - Address params: auto-converts bech32 to hex.\n * - Uint params (u8-u256): validates range, converts bigint/number to quoted string.\n * Rejects non-numeric/non-string types for uint params.\n * - All other cases: delegates to jsonStringifyArg (bigint-safe fallback).\n */\nfunction convertArgToJson(arg: unknown, paramType?: string): string {\n if (\n paramType &&\n isAddressLikeType(paramType) &&\n typeof arg === 'string' &&\n !arg.startsWith('0x')\n ) {\n try {\n return JSON.stringify(AccAddress.toHex(arg))\n } catch {\n // Not a valid bech32 address, pass as-is\n }\n }\n\n const uintMax = paramType ? UINT_MAX.get(paramType) : undefined\n if (uintMax !== undefined) {\n if (typeof arg === 'bigint') {\n if (arg < 0n || arg > uintMax) {\n throw new Error(`Value ${arg} out of range for Move type ${paramType} (0..${uintMax}).`)\n }\n return JSON.stringify(arg.toString())\n }\n if (typeof arg === 'number') {\n if (!Number.isSafeInteger(arg) || arg < 0) {\n throw new Error(\n `Unsafe number ${arg} for Move type ${paramType}. ` +\n `Expected a non-negative safe integer, or use BigInt.`\n )\n }\n const value = BigInt(arg)\n if (value > uintMax) {\n throw new Error(`Value ${arg} out of range for Move type ${paramType} (0..${uintMax}).`)\n }\n return JSON.stringify(String(arg))\n }\n if (typeof arg !== 'string') {\n throw new Error(\n `Invalid argument type ${typeof arg} for Move type ${paramType}. ` +\n `Expected bigint, number, or string.`\n )\n }\n }\n\n return jsonStringifyArg(arg)\n}\n\n/**\n * Checks if any param type contains unresolved generic references (T0, T1, ...).\n * Used to fall back to JSON path when BCS encoding is not possible.\n */\nfunction hasUnresolvedGenerics(paramTypes: string[]): boolean {\n return paramTypes.some(p => /\\bT\\d+\\b/.test(p))\n}\n\n/**\n * Resolves generic type references (T0, T1, ...) in Move type strings\n * using the provided typeArgs array.\n */\nfunction resolveGenericTypes(types: string[], typeArgs: string[]): string[] {\n if (typeArgs.length === 0) return types\n return types.map(t =>\n t.replace(/\\bT(\\d+)\\b/g, (match, indexStr: string) => {\n const i = parseInt(indexStr)\n return i < typeArgs.length ? typeArgs[i] : match\n })\n )\n}\n\nconst KNOWN_BCS_BASES = new Set([\n 'bool',\n 'u8',\n 'u16',\n 'u32',\n 'u64',\n 'u128',\n 'u256',\n 'address',\n 'signer',\n 'vector',\n 'string',\n '0x1::string::String',\n '0x1::option::Option',\n '0x1::object::Object',\n '0x1::object::ObjectCore',\n '0x1::fixed_point32::FixedPoint32',\n '0x1::fixed_point64::FixedPoint64',\n '0x1::decimal128::Decimal128',\n '0x1::decimal256::Decimal256',\n])\n\n/**\n * Checks if all param types can be BCS-encoded by resolveBcsType().\n * Recursively checks type args (e.g., vector<UnknownType> → false).\n */\nfunction allTypesResolvable(paramTypes: string[]): boolean {\n function isResolvable(parsed: ParsedMoveType): boolean {\n if (!KNOWN_BCS_BASES.has(parsed.base)) return false\n // Object<T>'s type param is phantom — does not affect BCS encoding\n if (parsed.base === '0x1::object::Object' || parsed.base === '0x1::object::ObjectCore') {\n return true\n }\n return parsed.typeArgs.every(isResolvable)\n }\n return paramTypes.every(p => isResolvable(parseMoveType(p)))\n}\n\n// =============================================================================\n// View Response Conversion Helpers\n// =============================================================================\n\n/**\n * Converts a JSON-parsed view response value to a typed value\n * based on the Move return type from the ABI.\n *\n * Only converts types where JSON representation differs from target:\n * - u64/u128/u256 JSON strings → bigint\n * - vector<T> → recursively converts elements\n * - Option<T> → null or recursively converts inner value\n *\n * Types that are already correct (bool, u8/u16/u32, address, string,\n * Object<T>, decimal, fixed_point) pass through unchanged.\n */\nfunction convertJsonValue(value: unknown, parsed: ParsedMoveType): unknown {\n const { base, typeArgs } = parsed\n\n switch (base) {\n case 'u64':\n case 'u128':\n case 'u256':\n if (typeof value === 'string') return BigInt(value)\n if (typeof value === 'number') return BigInt(value)\n return value\n\n case 'vector':\n if (Array.isArray(value) && typeArgs.length === 1) {\n return value.map(v => convertJsonValue(v, typeArgs[0]))\n }\n return value\n\n case '0x1::option::Option':\n if (value === null || value === undefined) return null\n if (typeof value === 'object' && value !== null && 'vec' in value) {\n const vec = (value as { vec: unknown[] }).vec\n if (vec.length === 0) return null\n if (vec.length === 1 && typeArgs.length === 1) {\n return convertJsonValue(vec[0], typeArgs[0])\n }\n }\n if (typeArgs.length === 1) {\n return convertJsonValue(value, typeArgs[0])\n }\n return value\n\n default:\n return value\n }\n}\n\n/**\n * Converts a view function's JSON response to typed values.\n *\n * @param jsonParsed - Result of JSON.parse(response.data)\n * @param returnTypes - ABI return types (fn.return)\n * @returns Typed value (single) or typed array (multiple returns)\n */\nfunction convertViewResponse(jsonParsed: unknown, returnTypes: string[]): unknown {\n if (returnTypes.length === 0) return jsonParsed\n\n if (returnTypes.length === 1) {\n return convertJsonValue(jsonParsed, parseMoveType(returnTypes[0]))\n }\n\n if (Array.isArray(jsonParsed)) {\n return (jsonParsed as unknown[]).map((val, i) =>\n i < returnTypes.length ? convertJsonValue(val, parseMoveType(returnTypes[i])) : val\n )\n }\n\n return jsonParsed\n}\n\n// =============================================================================\n// Contract Factory\n// =============================================================================\n\n/**\n * Internal sync helper — builds a MoveContract from a resolved ABI.\n * Shared by both the static ABI (sync) and runtime ABI (async) overloads.\n */\nfunction buildContract(\n context: HasMoveService,\n moduleAddress: string,\n moduleName: string,\n abi: MoveModuleAbi\n): MoveContract {\n const moveClient = context.client.move\n\n // Cache for token decimals by coin type\n const decimalsCache = new Map<string, number>()\n\n // Create execute proxy for entry functions\n const execute = new Proxy({} as MoveExecuteProxy, {\n get(_, functionName: string) {\n return (\n sender: string,\n callOptions?: MoveCallOptions\n ): Message<typeof MsgExecuteJSONSchema> | Message<typeof MsgExecuteSchema> => {\n const fn = findFunction(abi, functionName)\n if (!fn) {\n throw new ContractError('move', 0, `Function not found: ${functionName}`)\n }\n if (!fn.is_entry) {\n throw new ContractError('move', 0, `Function is not an entry function: ${functionName}`)\n }\n\n const typeArgs = callOptions?.typeArgs ?? []\n const args = callOptions?.args ?? []\n\n const paramTypes = getNonSignerParams(fn)\n const resolvedParams = resolveGenericTypes(paramTypes, typeArgs)\n\n // BCS path: all generics resolved and all types known\n if (!hasUnresolvedGenerics(resolvedParams) && allTypesResolvable(resolvedParams)) {\n const bcsArgs = encodeMoveArgs(args, resolvedParams)\n return new Message(MsgExecuteSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: bcsArgs,\n })\n }\n\n // JSON fallback: unresolved generics or unknown types\n const jsonArgs = args.map((arg, i) => convertArgToJson(arg, resolvedParams[i]))\n return new Message(MsgExecuteJSONSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n }\n },\n })\n\n // Create view proxy for view functions\n const view = new Proxy({} as MoveViewProxy, {\n get(_, functionName: string) {\n return async (callOptions?: MoveCallOptions): Promise<unknown> => {\n const fn = findFunction(abi, functionName)\n if (!fn) {\n throw new ContractError('move', 0, `Function not found: ${functionName}`)\n }\n if (!fn.is_view) {\n throw new ContractError('move', 0, `Function is not a view function: ${functionName}`)\n }\n\n const typeArgs = callOptions?.typeArgs ?? []\n const args = callOptions?.args ?? []\n\n // Get non-signer param types from ABI for address conversion\n const paramTypes = getNonSignerParams(fn)\n const resolvedParams = resolveGenericTypes(paramTypes, typeArgs)\n const jsonArgs = args.map((arg, i) => convertArgToJson(arg, resolvedParams[i]))\n\n const response = await moveClient.viewJSON({\n address: moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n\n // Parse JSON response and convert to typed values using ABI return info\n try {\n const parsed: unknown = JSON.parse(response.data)\n\n const resolvedReturns = resolveGenericTypes(fn.return, typeArgs)\n if (\n resolvedReturns.length > 0 &&\n !hasUnresolvedGenerics(resolvedReturns) &&\n allTypesResolvable(resolvedReturns)\n ) {\n return convertViewResponse(parsed, resolvedReturns)\n }\n\n return parsed\n } catch {\n return response.data\n }\n }\n },\n })\n\n // Query resource\n async function resource(address: string, structTag: string): Promise<unknown> {\n const response = await moveClient.resource({\n address,\n structTag,\n })\n\n if (!response.resource) {\n throw new ContractError('move', 0, `Resource not found: ${structTag}`)\n }\n\n // Parse JSON resource\n try {\n return JSON.parse(response.resource.moveResource)\n } catch {\n return response.resource.moveResource\n }\n }\n\n // Query table entry\n async function tableEntry(tableHandle: string, key: unknown, keyType: string): Promise<unknown> {\n // Encode key to BCS bytes\n const keyBytes = encodeMoveArgs([key], [keyType])[0]\n\n const response = await moveClient.tableEntry({\n address: tableHandle,\n keyBytes,\n })\n\n if (!response.tableEntry) {\n throw new ContractError('move', 0, `Table entry not found`)\n }\n\n // Parse JSON value\n try {\n return JSON.parse(response.tableEntry.value)\n } catch {\n return response.tableEntry.value\n }\n }\n\n // Get decimals for a coin type\n async function getDecimals(coinType: string): Promise<number> {\n const cached = decimalsCache.get(coinType)\n if (cached !== undefined) {\n return cached\n }\n\n // Query CoinInfo resource to get decimals\n // Format: 0x1::coin::CoinInfo<CoinType>\n const coinInfoTag = `0x1::coin::CoinInfo<${coinType}>`\n\n // Extract the module address from coin type (e.g., 0x1 from 0x1::native_uinit::Coin)\n const coinTypeMatch = coinType.match(/^(0x[0-9a-fA-F]+)::/)\n const coinModuleAddress = coinTypeMatch ? coinTypeMatch[1] : '0x1'\n\n const coinInfo = (await resource(coinModuleAddress, coinInfoTag)) as { decimals: number }\n const decimals = coinInfo.decimals\n decimalsCache.set(coinType, decimals)\n return decimals\n }\n\n // Parse human-readable amount to minimum units\n async function parseUnitsForCoin(value: string, coinType: string): Promise<bigint> {\n const decimals = await getDecimals(coinType)\n return parseUnits(value, decimals)\n }\n\n // Format minimum units to human-readable amount\n async function formatUnitsForCoin(value: bigint, coinType: string): Promise<string> {\n const decimals = await getDecimals(coinType)\n return formatUnits(value, decimals)\n }\n\n // Get token info for a coin type\n async function getTokenInfo(coinType: string): Promise<TokenInfo> {\n const coinInfoTag = `0x1::coin::CoinInfo<${coinType}>`\n\n // Extract the module address from coin type\n const coinTypeMatch = coinType.match(/^(0x[0-9a-fA-F]+)::/)\n const coinModuleAddress = coinTypeMatch ? coinTypeMatch[1] : '0x1'\n\n const coinInfo = (await resource(coinModuleAddress, coinInfoTag)) as {\n name: string\n symbol: string\n decimals: number\n supply?: { value: string }\n }\n\n // Cache decimals\n decimalsCache.set(coinType, coinInfo.decimals)\n\n return {\n name: coinInfo.name,\n symbol: coinInfo.symbol,\n decimals: coinInfo.decimals,\n totalSupply: coinInfo.supply ? BigInt(coinInfo.supply.value) : undefined,\n }\n }\n\n return {\n moduleAddress,\n moduleName,\n abi,\n execute,\n view,\n resource,\n tableEntry,\n parseUnits: parseUnitsForCoin,\n formatUnits: formatUnitsForCoin,\n getTokenInfo,\n }\n}\n\n/**\n * Creates a Move contract instance with a static ABI for compile-time type inference.\n * Returns synchronously since no ABI fetch is needed.\n *\n * @param context - ChainContext with client (must have move service)\n * @param abi - Static ABI object (use `moveAbi()` or `as const satisfies ReadonlyMoveModuleAbi`)\n * @returns Typed Move contract instance with autocomplete and type inference\n *\n * @example\n * ```typescript\n * const COIN_ABI = moveAbi({\n * address: '0x1', name: 'coin', friends: [],\n * exposed_functions: [\n * { name: 'decimals', visibility: 'public', is_entry: false, is_view: true,\n * generic_type_params: [], params: ['0x1::object::Object<0x1::fungible_asset::Metadata>'],\n * return: ['u8'] },\n * ],\n * structs: [],\n * })\n * const coin = createMoveContract(ctx, COIN_ABI)\n * const dec = await coin.view.decimals({ args: ['0xabc'] }) // dec: number\n * ```\n */\nexport function createMoveContract<const T extends ReadonlyMoveModuleAbi>(\n context: HasMoveService,\n abi: T\n): TypedMoveContract<T>\n\n/**\n * Creates a Move contract instance by fetching ABI from chain.\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 - Contract options (ABI, caching)\n * @returns Move contract instance\n *\n * @example\n * ```typescript\n * const coin = await createMoveContract(ctx, '0x1', 'coin')\n * const msg = coin.execute.transfer(sender, {\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: [recipient, '1000000']\n * })\n * ```\n */\nexport function createMoveContract(\n context: HasMoveService,\n moduleAddress: string,\n moduleName: string,\n options?: CreateMoveContractOptions\n): Promise<MoveContract>\n\nexport function createMoveContract<T extends ReadonlyMoveModuleAbi>(\n context: HasMoveService,\n abiOrAddress: T | string,\n moduleName?: string,\n options: CreateMoveContractOptions = {}\n): TypedMoveContract<T> | Promise<MoveContract> {\n if (typeof abiOrAddress !== 'string') {\n // Static ABI path (sync)\n const abi = abiOrAddress\n validateModuleAddress(abi.address)\n validateModuleName(abi.name)\n return buildContract(\n context,\n abi.address,\n abi.name,\n abi as unknown as MoveModuleAbi\n ) as unknown as TypedMoveContract<T>\n }\n\n // Runtime ABI path (async)\n const moduleAddress = abiOrAddress\n validateModuleAddress(moduleAddress)\n validateModuleName(moduleName!)\n return (async () => {\n const fetchedAbi =\n options.abi ??\n (await getModuleAbi(context, moduleAddress, moduleName!, {\n useCache: options.useCache,\n cacheTtl: options.cacheTtl,\n }))\n return buildContract(context, moduleAddress, moduleName!, fetchedAbi)\n })()\n}\n\n// =============================================================================\n// Message Creators\n// =============================================================================\n\n/**\n * Creates a MsgPublish for publishing Move modules.\n *\n * @param options - Publish options\n * @returns MsgPublish message for signing\n *\n * @example\n * ```typescript\n * const msg = createPublishMsg({\n * sender: 'init1...',\n * codeBytes: [compiledModule1, compiledModule2],\n * upgradePolicy: UpgradePolicy.COMPATIBLE,\n * })\n * await ctx.signAndBroadcast([msg])\n * ```\n */\nexport function createPublishMsg(options: PublishModuleOptions): MsgPublish {\n return create(MsgPublishSchema, {\n sender: options.sender,\n codeBytes: options.codeBytes,\n upgradePolicy: options.upgradePolicy ?? UpgradePolicy.COMPATIBLE,\n })\n}\n\n/**\n * Creates a MsgScriptJSON for executing a Move script.\n *\n * @param options - Script execution options\n * @returns MsgScriptJSON message for signing\n *\n * @example\n * ```typescript\n * const msg = createScriptMsg({\n * sender: 'init1...',\n * codeBytes: compiledScript,\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: ['1000000'],\n * })\n * await ctx.signAndBroadcast([msg])\n * ```\n */\nexport function createScriptMsg(options: ExecuteScriptOptions): MsgScriptJSON {\n const jsonArgs = (options.args ?? []).map(arg => {\n if (arg instanceof Uint8Array) {\n return JSON.stringify(Array.from(arg))\n }\n return jsonStringifyArg(arg)\n })\n\n return create(MsgScriptJSONSchema, {\n sender: options.sender,\n codeBytes: options.codeBytes,\n typeArgs: options.typeArgs ?? [],\n args: jsonArgs,\n })\n}\n\n/**\n * Creates a MsgScript with BCS-encoded arguments.\n *\n * Use this when you have pre-encoded BCS arguments. For simpler JSON arguments,\n * use createScriptMsg() instead.\n *\n * @param options - Script execution options with BCS-encoded args\n * @returns MsgScript message for signing\n *\n * @example\n * ```typescript\n * const msg = createBcsScriptMsg({\n * sender: 'init1...',\n * codeBytes: compiledScript,\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: [bcsEncodedAmount], // Pre-encoded BCS bytes\n * })\n * await ctx.signAndBroadcast([msg])\n * ```\n */\nexport function createBcsScriptMsg(options: BcsScriptOptions): MsgScript {\n return create(MsgScriptSchema, {\n sender: options.sender,\n codeBytes: options.codeBytes,\n typeArgs: options.typeArgs ?? [],\n args: options.args ?? [],\n })\n}\n\n/**\n * Creates a MsgExecuteJSON directly without a contract instance.\n *\n * @param sender - Sender address\n * @param moduleAddress - Module address\n * @param moduleName - Module name\n * @param functionName - Function name\n * @param typeArgs - Type arguments\n * @param args - Function arguments (will be JSON stringified)\n * @returns MsgExecuteJSON message for signing\n *\n * @example\n * ```typescript\n * const msg = createExecuteMsg(\n * sender,\n * '0x1',\n * 'coin',\n * 'transfer',\n * ['0x1::native_uinit::Coin'],\n * [recipient, '1000000']\n * )\n * ```\n */\nexport function createExecuteMsg(\n sender: string,\n moduleAddress: string,\n moduleName: string,\n functionName: string,\n typeArgs: string[] = [],\n args: unknown[] = []\n): MsgExecuteJSON {\n const jsonArgs = args.map(jsonStringifyArg)\n\n return create(MsgExecuteJSONSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n}\n\n// =============================================================================\n// View Function Caller\n// =============================================================================\n\n/**\n * Calls a view function directly without creating a contract instance.\n *\n * @param context - ChainContext with client (must have move service)\n * @param moduleAddress - Module address\n * @param moduleName - Module name\n * @param functionName - Function name\n * @param typeArgs - Type arguments\n * @param args - Function arguments (will be JSON stringified)\n * @returns View function result\n *\n * @example\n * ```typescript\n * const balance = await callViewFunction(\n * ctx,\n * '0x1',\n * 'coin',\n * 'balance',\n * ['0x1::native_uinit::Coin'],\n * [address]\n * )\n * ```\n */\nexport async function callViewFunction(\n context: HasMoveService,\n moduleAddress: string,\n moduleName: string,\n functionName: string,\n typeArgs: string[] = [],\n args: unknown[] = []\n): Promise<unknown> {\n const moveClient = context.client.move\n const jsonArgs = args.map(jsonStringifyArg)\n\n const response = await moveClient.viewJSON({\n address: moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n\n try {\n return JSON.parse(response.data)\n } catch {\n return response.data\n }\n}\n\n// =============================================================================\n// Mid-Level Standalone Functions (Phase 5)\n// =============================================================================\n\n/**\n * Parse a full Move function identifier into components.\n * @example parseMoveFunction('0x1::coin::transfer')\n * // → { moduleAddress: '0x1', moduleName: 'coin', functionName: 'transfer' }\n */\nfunction parseMoveFunction(fn: string): {\n moduleAddress: string\n moduleName: string\n functionName: string\n} {\n const parts = fn.split('::')\n if (parts.length !== 3) {\n throw new ContractError(\n 'move',\n 0,\n `Invalid Move function identifier: \"${fn}\". Expected format: \"address::module::function\"`\n )\n }\n return {\n moduleAddress: parts[0],\n moduleName: parts[1],\n functionName: parts[2],\n }\n}\n\n/**\n * Build a Move execute message using a combined function identifier.\n *\n * Without paramTypes: creates MsgExecuteJSON (chain handles type resolution).\n * With paramTypes: attempts BCS encoding (MsgExecute), falls back to JSON with bech32 conversion.\n *\n * @example\n * ```typescript\n * // Simple (JSON path)\n * const msg = buildMoveExecute(sender, {\n * function: '0x1::coin::transfer',\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: ['0xrecipient', '1000000'],\n * })\n *\n * // With BCS + bech32\n * const msg = buildMoveExecute(sender, {\n * function: '0x1::coin::transfer',\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: ['init1qwer...', 1000000n],\n * paramTypes: ['address', 'u64'],\n * })\n * ```\n */\nexport function buildMoveExecute(\n sender: string,\n options: BuildMoveExecuteOptions\n): Message<typeof MsgExecuteSchema> | Message<typeof MsgExecuteJSONSchema> {\n const { moduleAddress, moduleName, functionName } = parseMoveFunction(options.function)\n const typeArgs = options.typeArgs ?? []\n const args = options.args ?? []\n\n if (options.paramTypes) {\n const resolvedParams = resolveGenericTypes(options.paramTypes, typeArgs)\n\n // BCS path: all generics resolved and all types known\n if (!hasUnresolvedGenerics(resolvedParams) && allTypesResolvable(resolvedParams)) {\n const bcsArgs = encodeMoveArgs(args, resolvedParams)\n return new Message(MsgExecuteSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: bcsArgs,\n })\n }\n\n // JSON fallback with bech32 conversion\n const jsonArgs = args.map((arg, i) => convertArgToJson(arg, resolvedParams[i]))\n return new Message(MsgExecuteJSONSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n }\n\n // No paramTypes: plain JSON path (same as createExecuteMsg)\n const jsonArgs = args.map(jsonStringifyArg)\n return new Message(MsgExecuteJSONSchema, {\n sender,\n moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n}\n\n/**\n * Call a Move view function using a combined function identifier.\n *\n * Without returns: returns raw JSON.parse result.\n * With returns: converts response to typed values (u64→bigint, etc.).\n * With paramTypes: applies bech32→hex conversion on args.\n *\n * @example\n * ```typescript\n * // Typed response\n * const balance = await buildMoveView(ctx, {\n * function: '0x1::coin::balance',\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: ['0xaddress'],\n * returns: ['u64'],\n * })\n * // balance: bigint\n *\n * // With bech32 args + typed response\n * const balance = await buildMoveView(ctx, {\n * function: '0x1::coin::balance',\n * typeArgs: ['0x1::native_uinit::Coin'],\n * args: ['init1qwer...'],\n * paramTypes: ['address'],\n * returns: ['u64'],\n * })\n * ```\n */\nexport async function buildMoveView(\n context: HasMoveService,\n options: BuildMoveViewOptions\n): Promise<unknown> {\n const { moduleAddress, moduleName, functionName } = parseMoveFunction(options.function)\n const typeArgs = options.typeArgs ?? []\n const args = options.args ?? []\n\n // Build JSON args\n let jsonArgs: string[]\n if (options.paramTypes) {\n const resolvedParams = resolveGenericTypes(options.paramTypes, typeArgs)\n jsonArgs = args.map((arg, i) => convertArgToJson(arg, resolvedParams[i]))\n } else {\n jsonArgs = args.map(jsonStringifyArg)\n }\n\n const response = await context.client.move.viewJSON({\n address: moduleAddress,\n moduleName,\n functionName,\n typeArgs,\n args: jsonArgs,\n })\n\n try {\n const parsed: unknown = JSON.parse(response.data)\n\n // Typed conversion if returns provided and all types resolvable\n if (options.returns && options.returns.length > 0) {\n const resolvedReturns = resolveGenericTypes(options.returns, typeArgs)\n if (!hasUnresolvedGenerics(resolvedReturns) && allTypesResolvable(resolvedReturns)) {\n return convertViewResponse(parsed, resolvedReturns)\n }\n }\n\n return parsed\n } catch {\n return response.data\n }\n}\n\n// =============================================================================\n// Resource and Table Queries\n// =============================================================================\n\n/**\n * Queries a Move resource directly.\n *\n * @param context - ChainContext with client (must have move service)\n * @param address - Account address\n * @param structTag - Resource struct tag (e.g., '0x1::coin::CoinStore<0x1::native_uinit::Coin>')\n * @returns Parsed resource data\n *\n * @example\n * ```typescript\n * const resource = await queryResource(ctx, '0x1', '0x1::coin::CoinInfo<...>')\n * ```\n */\nexport async function queryResource(\n context: HasMoveService,\n address: string,\n structTag: string\n): Promise<unknown> {\n const moveClient = context.client.move\n const response = await moveClient.resource({\n address,\n structTag,\n })\n\n if (!response.resource) {\n throw new ContractError('move', 0, `Resource not found: ${structTag}`)\n }\n\n try {\n return JSON.parse(response.resource.moveResource)\n } catch {\n return response.resource.moveResource\n }\n}\n\n/**\n * Queries a Move table entry directly.\n *\n * @param context - ChainContext with client (must have move service)\n * @param tableHandle - Table handle address\n * @param key - Key value\n * @param keyType - Key type for BCS encoding\n * @returns Parsed table entry value\n *\n * @example\n * ```typescript\n * const entry = await queryTableEntry(ctx, tableHandle, key, 'address')\n * ```\n */\nexport async function queryTableEntry(\n context: HasMoveService,\n tableHandle: string,\n key: unknown,\n keyType: string\n): Promise<unknown> {\n const moveClient = context.client.move\n const keyBytes = encodeMoveArgs([key], [keyType])[0]\n\n const response = await moveClient.tableEntry({\n address: tableHandle,\n keyBytes,\n })\n\n if (!response.tableEntry) {\n throw new ContractError('move', 0, `Table entry not found`)\n }\n\n try {\n return JSON.parse(response.tableEntry.value)\n } catch {\n return response.tableEntry.value\n }\n}\n\n// =============================================================================\n// Re-exports\n// =============================================================================\n\nexport { UpgradePolicy }\nexport type { MoveQueryClient }\n"],"mappings":"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"}
|
|
@@ -0,0 +1,540 @@
|
|
|
1
|
+
import { l as KeyError, m as ValidationError } from "./errors-CN1MFOLv.mjs";
|
|
2
|
+
import { u as sortObject } from "./amino-CMQN7Frn.mjs";
|
|
3
|
+
import { n as packPubKey, t as getAminoPubKeyType } from "./public-key-DV-uGaUC.mjs";
|
|
4
|
+
import { i as sha256, n as keccak256, r as ripemd160 } from "./hash-D40mxOlF.mjs";
|
|
5
|
+
import { a as encodeTxDirect, c as makeSignBytes, l as makeStdSignDoc, o as makeAminoSignBytes, s as makeEIP191SignBytes, t as buildStdFee } from "./sign-DqagxLcg.mjs";
|
|
6
|
+
import { t as createGrpcClient } from "./grpc-client-DGyZjGcT.mjs";
|
|
7
|
+
import { n as createBaseConfig, y as wrapClientWithCache } from "./types_pb-K7pKBvcg.mjs";
|
|
8
|
+
import { t as createErc20Token } from "./erc20-CDs3j7vt.mjs";
|
|
9
|
+
import { t as createCw20Token } from "./cw20-BTpdgMXC.mjs";
|
|
10
|
+
import { t as createFungibleAssetToken } from "./fungible-asset-aHBTYpoT.mjs";
|
|
11
|
+
import { n as createClientWithConfig$1 } from "./initia-Cj4bZ1dR.mjs";
|
|
12
|
+
import { n as createClientWithConfig$2 } from "./minievm-DZ8AhnD8.mjs";
|
|
13
|
+
import { n as createClientWithConfig$3 } from "./minimove-B8U85g-_.mjs";
|
|
14
|
+
import { n as createClientWithConfig$4 } from "./miniwasm-CB0XfStg.mjs";
|
|
15
|
+
import { base64, bech32 } from "@scure/base";
|
|
16
|
+
import { secp256k1 } from "@noble/curves/secp256k1.js";
|
|
17
|
+
import { bytesToHex, hexToBytes } from "@noble/hashes/utils.js";
|
|
18
|
+
import { generateMnemonic, mnemonicToSeedSync, validateMnemonic } from "@scure/bip39";
|
|
19
|
+
import { HDKey } from "@scure/bip32";
|
|
20
|
+
import { wordlist } from "@scure/bip39/wordlists/english.js";
|
|
21
|
+
//#region src/key/key.ts
|
|
22
|
+
/**
|
|
23
|
+
* Abstract base class for Initia key management.
|
|
24
|
+
*
|
|
25
|
+
* Handles both Cosmos-style and EVM-style address derivation:
|
|
26
|
+
* - Cosmos: ripemd160(sha256(compressed_pubkey))
|
|
27
|
+
* - EVM: keccak256(uncompressed_pubkey[1:])[12:32]
|
|
28
|
+
*
|
|
29
|
+
* Implements the Signer interface for compatibility with external key management.
|
|
30
|
+
*/
|
|
31
|
+
/** Default bech32 prefix for Initia addresses */
|
|
32
|
+
const DEFAULT_BECH32_PREFIX = "init";
|
|
33
|
+
/**
|
|
34
|
+
* Abstract base class for cryptographic key operations.
|
|
35
|
+
*
|
|
36
|
+
* Implements the Signer interface, making it compatible with:
|
|
37
|
+
* - External key stores (KeyStore)
|
|
38
|
+
* - Hardware wallets (Ledger)
|
|
39
|
+
* - Browser extensions (Keplr, Leap)
|
|
40
|
+
*
|
|
41
|
+
* Subclasses must implement:
|
|
42
|
+
* - publicKey: The compressed secp256k1 public key bytes
|
|
43
|
+
* - isEth: Whether to use EVM-style address derivation
|
|
44
|
+
* - signRaw(): Sign raw bytes with SHA256 hash (protected)
|
|
45
|
+
* - signWithKeccak256(): Sign with Keccak256 hash
|
|
46
|
+
*/
|
|
47
|
+
var Key = class {
|
|
48
|
+
/**
|
|
49
|
+
* Signing algorithm.
|
|
50
|
+
* - 'eth_secp256k1' for Initia/Ethereum (isEth=true)
|
|
51
|
+
* - 'secp256k1' for Cosmos chains (isEth=false)
|
|
52
|
+
*/
|
|
53
|
+
get algorithm() {
|
|
54
|
+
return this.isEth ? "eth_secp256k1" : "secp256k1";
|
|
55
|
+
}
|
|
56
|
+
/** Preferred sign mode hint (undefined = auto-detect via duck typing) */
|
|
57
|
+
preferredSignMode;
|
|
58
|
+
async sign(input, mpk) {
|
|
59
|
+
if (input instanceof Uint8Array) return this.signRaw(input);
|
|
60
|
+
if (mpk) {
|
|
61
|
+
const index = mpk.publicKeys.findIndex((pk) => pk.length === this.publicKey.length && pk.every((b, i) => b === this.publicKey[i]));
|
|
62
|
+
if (index === -1) throw new ValidationError("key", "This key is not a member of the provided MultisigPublicKey");
|
|
63
|
+
const signBytes = input.getMultisigSignBytes(mpk);
|
|
64
|
+
return {
|
|
65
|
+
index,
|
|
66
|
+
signature: this.isEth ? await this.signWithKeccak256(signBytes) : await this.signRaw(signBytes)
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
return this._signTx(input);
|
|
70
|
+
}
|
|
71
|
+
async _signTx(tx) {
|
|
72
|
+
switch (tx.signMode) {
|
|
73
|
+
case "amino":
|
|
74
|
+
case "eip191": {
|
|
75
|
+
const stdSignDoc = makeStdSignDoc(tx.msgs.map((m) => m.toAmino()), buildStdFee(tx), tx.chainId, tx.memo, tx.accountNumber, tx.sequence);
|
|
76
|
+
const signBytes = tx.signMode === "eip191" ? makeEIP191SignBytes(stdSignDoc) : makeAminoSignBytes(stdSignDoc);
|
|
77
|
+
return this.isEth || tx.signMode === "eip191" ? this.signWithKeccak256(signBytes) : this.signRaw(signBytes);
|
|
78
|
+
}
|
|
79
|
+
case "direct": {
|
|
80
|
+
const algorithm = this.isEth ? "ethsecp256k1" : "secp256k1";
|
|
81
|
+
const { bodyBytes, authInfoBytes } = encodeTxDirect(tx, this.publicKey, algorithm);
|
|
82
|
+
const signBytes = makeSignBytes(bodyBytes, authInfoBytes, tx.chainId, tx.accountNumber);
|
|
83
|
+
return this.isEth ? this.signWithKeccak256(signBytes) : this.signRaw(signBytes);
|
|
84
|
+
}
|
|
85
|
+
default: throw new ValidationError("signMode", `Unsupported sign mode: ${tx.signMode}`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Get the public key (Signer interface).
|
|
90
|
+
* @returns Compressed secp256k1 public key (33 bytes)
|
|
91
|
+
*/
|
|
92
|
+
async getPublicKey() {
|
|
93
|
+
return this.publicKey;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Get the bech32 address (Signer interface).
|
|
97
|
+
* @param prefix - Address prefix (default: configured bech32Prefix)
|
|
98
|
+
* @returns Bech32-encoded address
|
|
99
|
+
*/
|
|
100
|
+
async getAddress(prefix) {
|
|
101
|
+
const p = prefix ?? this.bech32Prefix;
|
|
102
|
+
return bech32.encode(p, bech32.toWords(this.rawAddress));
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Sign a SignDoc directly (Protobuf encoding).
|
|
106
|
+
* Implements DirectSigner.signDirect.
|
|
107
|
+
*/
|
|
108
|
+
async signDirect(_signerAddress, signDoc) {
|
|
109
|
+
const signBytes = makeSignBytes(signDoc.bodyBytes, signDoc.authInfoBytes, signDoc.chainId, signDoc.accountNumber);
|
|
110
|
+
const signature = this.isEth ? await this.signWithKeccak256(signBytes) : await this.signRaw(signBytes);
|
|
111
|
+
const pubKeyAny = packPubKey(this.publicKey, this.isEth ? "ethsecp256k1" : "secp256k1");
|
|
112
|
+
return {
|
|
113
|
+
signed: signDoc,
|
|
114
|
+
signature: {
|
|
115
|
+
pubKey: {
|
|
116
|
+
typeUrl: pubKeyAny.typeUrl,
|
|
117
|
+
value: pubKeyAny.value
|
|
118
|
+
},
|
|
119
|
+
signature
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Sign an Amino JSON document.
|
|
125
|
+
* Implements AminoSigner.signAmino.
|
|
126
|
+
*/
|
|
127
|
+
async signAmino(_signerAddress, signDoc) {
|
|
128
|
+
const sorted = sortObject(signDoc);
|
|
129
|
+
const json = JSON.stringify(sorted);
|
|
130
|
+
const signBytes = new TextEncoder().encode(json);
|
|
131
|
+
const signature = this.isEth ? await this.signWithKeccak256(signBytes) : await this.signRaw(signBytes);
|
|
132
|
+
return {
|
|
133
|
+
signed: signDoc,
|
|
134
|
+
signature: {
|
|
135
|
+
pub_key: {
|
|
136
|
+
type: getAminoPubKeyType(this.isEth ? "ethsecp256k1" : "secp256k1"),
|
|
137
|
+
value: base64.encode(this.publicKey)
|
|
138
|
+
},
|
|
139
|
+
signature: base64.encode(signature)
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Sign data with EIP-191 personal sign prefix.
|
|
145
|
+
* Prepends "\x19Ethereum Signed Message:\n{length}" and signs with keccak256.
|
|
146
|
+
*
|
|
147
|
+
* @param data - Raw bytes to sign (typically Amino sign bytes)
|
|
148
|
+
* @returns ECDSA signature (64 bytes, r || s)
|
|
149
|
+
*/
|
|
150
|
+
async signPersonal(data) {
|
|
151
|
+
const prefix = `\x19Ethereum Signed Message:\n${data.length}`;
|
|
152
|
+
const prefixBytes = new TextEncoder().encode(prefix);
|
|
153
|
+
const prefixed = new Uint8Array(prefixBytes.length + data.length);
|
|
154
|
+
prefixed.set(prefixBytes, 0);
|
|
155
|
+
prefixed.set(data, prefixBytes.length);
|
|
156
|
+
return this.signWithKeccak256(prefixed);
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Raw address bytes (20 bytes).
|
|
160
|
+
* Derivation method depends on isEth flag.
|
|
161
|
+
*/
|
|
162
|
+
get rawAddress() {
|
|
163
|
+
if (this.isEth) return keccak256(secp256k1.Point.fromHex(bytesToHex(this.publicKey)).toBytes(false).slice(1)).slice(12);
|
|
164
|
+
else return ripemd160(sha256(this.publicKey));
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Account address (e.g., init1..., osmo1..., noble1...).
|
|
168
|
+
* Uses bech32 encoding with the configured prefix.
|
|
169
|
+
*/
|
|
170
|
+
get address() {
|
|
171
|
+
return bech32.encode(this.bech32Prefix, bech32.toWords(this.rawAddress));
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Validator operator address (e.g., initvaloper1...).
|
|
175
|
+
* Uses bech32 encoding with the configured prefix + 'valoper'.
|
|
176
|
+
*/
|
|
177
|
+
get valAddress() {
|
|
178
|
+
return bech32.encode(this.bech32Prefix + "valoper", bech32.toWords(this.rawAddress));
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* EVM hex address (0x...).
|
|
182
|
+
* Always uses keccak256 derivation regardless of isEth flag.
|
|
183
|
+
*/
|
|
184
|
+
get evmAddress() {
|
|
185
|
+
return `0x${bytesToHex(keccak256(secp256k1.Point.fromHex(bytesToHex(this.publicKey)).toBytes(false).slice(1)).slice(12))}`;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Verify a signature against a message.
|
|
189
|
+
* Uses SHA256 hash for verification.
|
|
190
|
+
* @param message - Original message bytes
|
|
191
|
+
* @param signature - ECDSA signature (64 bytes)
|
|
192
|
+
* @returns true if signature is valid
|
|
193
|
+
*/
|
|
194
|
+
verify(message, signature) {
|
|
195
|
+
const msgHash = sha256(message);
|
|
196
|
+
return secp256k1.verify(signature, msgHash, this.publicKey, { prehash: false });
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Verify a signature using Keccak256 hash (EVM compatible).
|
|
200
|
+
* @param message - Original message bytes
|
|
201
|
+
* @param signature - ECDSA signature (64 bytes)
|
|
202
|
+
* @returns true if signature is valid
|
|
203
|
+
*/
|
|
204
|
+
verifyWithKeccak256(message, signature) {
|
|
205
|
+
const msgHash = keccak256(message);
|
|
206
|
+
return secp256k1.verify(signature, msgHash, this.publicKey, { prehash: false });
|
|
207
|
+
}
|
|
208
|
+
};
|
|
209
|
+
//#endregion
|
|
210
|
+
//#region src/key/raw-key.ts
|
|
211
|
+
/**
|
|
212
|
+
* RawKey - Key implementation using a raw private key.
|
|
213
|
+
*
|
|
214
|
+
* Creates keys from raw 32-byte private keys for signing transactions.
|
|
215
|
+
* Supports both Cosmos-style and EVM-style address derivation.
|
|
216
|
+
*/
|
|
217
|
+
/**
|
|
218
|
+
* Key implementation using a raw private key.
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```typescript
|
|
222
|
+
* // From raw bytes
|
|
223
|
+
* const key = new RawKey(privateKeyBytes)
|
|
224
|
+
*
|
|
225
|
+
* // From hex string
|
|
226
|
+
* const key = RawKey.fromHex('0x...')
|
|
227
|
+
*
|
|
228
|
+
* // Get address
|
|
229
|
+
* console.log(key.address) // init1...
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
var RawKey = class RawKey extends Key {
|
|
233
|
+
publicKey;
|
|
234
|
+
isEth;
|
|
235
|
+
bech32Prefix;
|
|
236
|
+
/** Private key stored securely using ES2022 private field */
|
|
237
|
+
#privateKey;
|
|
238
|
+
/** Track if key has been destroyed */
|
|
239
|
+
#destroyed = false;
|
|
240
|
+
/**
|
|
241
|
+
* Create a RawKey from a private key.
|
|
242
|
+
* @param privateKey - 32-byte private key
|
|
243
|
+
* @param isEth - Use EVM-style address derivation (default: true)
|
|
244
|
+
* @param bech32Prefix - Bech32 prefix for address encoding (default: 'init')
|
|
245
|
+
*/
|
|
246
|
+
constructor(privateKey, isEth = true, bech32Prefix = DEFAULT_BECH32_PREFIX) {
|
|
247
|
+
super();
|
|
248
|
+
if (privateKey.length !== 32) throw new KeyError("import", "Private key must be 32 bytes");
|
|
249
|
+
this.#privateKey = privateKey;
|
|
250
|
+
this.publicKey = secp256k1.getPublicKey(privateKey, true);
|
|
251
|
+
this.isEth = isEth;
|
|
252
|
+
this.bech32Prefix = bech32Prefix;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Create a RawKey from a hex string.
|
|
256
|
+
* @param hex - 64-character hex string (with or without 0x prefix)
|
|
257
|
+
* @param isEth - Use EVM-style address derivation (default: true)
|
|
258
|
+
* @param bech32Prefix - Bech32 prefix for address encoding (default: 'init')
|
|
259
|
+
*/
|
|
260
|
+
static fromHex(hex, isEth = true, bech32Prefix = DEFAULT_BECH32_PREFIX) {
|
|
261
|
+
const cleaned = hex.replace(/^0x/, "");
|
|
262
|
+
if (cleaned.length !== 64) throw new KeyError("import", "Private key must be 64 hex characters");
|
|
263
|
+
return new RawKey(hexToBytes(cleaned), isEth, bech32Prefix);
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Check if the key has been destroyed.
|
|
267
|
+
*/
|
|
268
|
+
get isDestroyed() {
|
|
269
|
+
return this.#destroyed;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Securely destroy the key by zeroing out the private key bytes.
|
|
273
|
+
*
|
|
274
|
+
* After calling this method:
|
|
275
|
+
* - The private key memory is overwritten with zeros
|
|
276
|
+
* - Any subsequent signing operations will throw an error
|
|
277
|
+
* - The public key and address remain accessible
|
|
278
|
+
*
|
|
279
|
+
* WARNING: This operation is irreversible.
|
|
280
|
+
*
|
|
281
|
+
* @example
|
|
282
|
+
* ```typescript
|
|
283
|
+
* const key = new RawKey(privateKeyBytes)
|
|
284
|
+
* await key.sign(message)
|
|
285
|
+
* key.destroy() // Zero out private key when done
|
|
286
|
+
* ```
|
|
287
|
+
*/
|
|
288
|
+
destroy() {
|
|
289
|
+
if (this.#destroyed) return;
|
|
290
|
+
this.#privateKey.fill(0);
|
|
291
|
+
this.#destroyed = true;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Get the private key as a hex string (0x-prefixed).
|
|
295
|
+
* Use for EVM transaction signing or external key export.
|
|
296
|
+
* @throws KeyError if the key has been destroyed
|
|
297
|
+
*/
|
|
298
|
+
getPrivateKeyHex() {
|
|
299
|
+
if (this.#destroyed) throw new KeyError("sign", "Key has been destroyed");
|
|
300
|
+
return `0x${bytesToHex(this.#privateKey)}`;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Sign raw bytes with SHA256 hash.
|
|
304
|
+
* @param message - Raw message bytes to sign
|
|
305
|
+
* @returns ECDSA signature in compact format (64 bytes, r || s)
|
|
306
|
+
* @throws KeyError if the key has been destroyed
|
|
307
|
+
*/
|
|
308
|
+
async signRaw(message) {
|
|
309
|
+
if (this.#destroyed) throw new KeyError("sign", "Key has been destroyed");
|
|
310
|
+
const msgHash = sha256(message);
|
|
311
|
+
return secp256k1.sign(msgHash, this.#privateKey, { prehash: false });
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Sign a message with Keccak256 hash (EVM compatible).
|
|
315
|
+
* @param message - Raw message bytes to sign
|
|
316
|
+
* @returns ECDSA signature in compact format (64 bytes, r || s)
|
|
317
|
+
* @throws KeyError if the key has been destroyed
|
|
318
|
+
*/
|
|
319
|
+
async signWithKeccak256(message) {
|
|
320
|
+
if (this.#destroyed) throw new KeyError("sign", "Key has been destroyed");
|
|
321
|
+
const msgHash = keccak256(message);
|
|
322
|
+
return secp256k1.sign(msgHash, this.#privateKey, { prehash: false });
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Sign an EVM transaction hash with recoverable signature.
|
|
326
|
+
*
|
|
327
|
+
* Returns r, s, and yParity components needed for EIP-1559 transaction
|
|
328
|
+
* serialization. Uses keccak256-compatible ECDSA signing.
|
|
329
|
+
*
|
|
330
|
+
* @param hash - 32-byte hash to sign (already hashed, no prehash applied)
|
|
331
|
+
* @returns Recoverable signature components
|
|
332
|
+
* @throws KeyError if the key has been destroyed
|
|
333
|
+
*/
|
|
334
|
+
async signEvmHash(hash) {
|
|
335
|
+
if (this.#destroyed) throw new KeyError("sign", "Key has been destroyed");
|
|
336
|
+
if (hash.length !== 32) throw new KeyError("sign", `Expected 32-byte hash, got ${hash.length} bytes`);
|
|
337
|
+
const sig = secp256k1.sign(hash, this.#privateKey, {
|
|
338
|
+
prehash: false,
|
|
339
|
+
format: "recovered"
|
|
340
|
+
});
|
|
341
|
+
const recovery = sig[0];
|
|
342
|
+
if (recovery !== 0 && recovery !== 1) throw new KeyError("sign", `Unexpected recovery byte: ${recovery}`);
|
|
343
|
+
return {
|
|
344
|
+
r: sig.slice(1, 33),
|
|
345
|
+
s: sig.slice(33, 65),
|
|
346
|
+
yParity: recovery
|
|
347
|
+
};
|
|
348
|
+
}
|
|
349
|
+
};
|
|
350
|
+
//#endregion
|
|
351
|
+
//#region src/key/mnemonic-key.ts
|
|
352
|
+
/**
|
|
353
|
+
* MnemonicKey - Key implementation using BIP-39 mnemonic phrases.
|
|
354
|
+
*
|
|
355
|
+
* Derives keys from 24-word mnemonic phrases using BIP-32/BIP-44 HD derivation.
|
|
356
|
+
* Default derivation path: m/44'/60'/0'/0/0 (Ethereum/Initia)
|
|
357
|
+
*/
|
|
358
|
+
/** Ethereum coin type used for Initia (BIP-44) */
|
|
359
|
+
const INIT_COIN_TYPE = 60;
|
|
360
|
+
const DEFAULT_OPTIONS = {
|
|
361
|
+
coinType: 60,
|
|
362
|
+
account: 0,
|
|
363
|
+
index: 0,
|
|
364
|
+
isEth: true,
|
|
365
|
+
bech32Prefix: DEFAULT_BECH32_PREFIX
|
|
366
|
+
};
|
|
367
|
+
/**
|
|
368
|
+
* Key implementation using BIP-39 mnemonic phrases.
|
|
369
|
+
*
|
|
370
|
+
* ⚠️ SECURITY: Mnemonic phrases are NOT stored in the key instance.
|
|
371
|
+
* Use `MnemonicKey.generate()` to create a new key and get the mnemonic for backup.
|
|
372
|
+
*
|
|
373
|
+
* @example
|
|
374
|
+
* ```typescript
|
|
375
|
+
* // Generate new key with mnemonic backup
|
|
376
|
+
* const { key, mnemonic } = MnemonicKey.generate()
|
|
377
|
+
* console.log(mnemonic) // Display to user for backup, then discard
|
|
378
|
+
*
|
|
379
|
+
* // From existing mnemonic
|
|
380
|
+
* const key = new MnemonicKey({ mnemonic: 'word1 word2 ...' })
|
|
381
|
+
*
|
|
382
|
+
* // Custom derivation path
|
|
383
|
+
* const key = new MnemonicKey({
|
|
384
|
+
* mnemonic: '...',
|
|
385
|
+
* account: 1,
|
|
386
|
+
* index: 5,
|
|
387
|
+
* })
|
|
388
|
+
* ```
|
|
389
|
+
*/
|
|
390
|
+
var MnemonicKey = class MnemonicKey extends RawKey {
|
|
391
|
+
/**
|
|
392
|
+
* Create a MnemonicKey from an existing mnemonic.
|
|
393
|
+
*
|
|
394
|
+
* For generating a new key with mnemonic backup, use `MnemonicKey.generate()`.
|
|
395
|
+
*
|
|
396
|
+
* @param options - Mnemonic key options (mnemonic is required)
|
|
397
|
+
*/
|
|
398
|
+
constructor(options) {
|
|
399
|
+
const { mnemonic, coinType, account, index, isEth, bech32Prefix } = {
|
|
400
|
+
...DEFAULT_OPTIONS,
|
|
401
|
+
...options
|
|
402
|
+
};
|
|
403
|
+
if (!validateMnemonic(mnemonic, wordlist)) throw new KeyError("import", "Invalid mnemonic phrase");
|
|
404
|
+
const seed = mnemonicToSeedSync(mnemonic);
|
|
405
|
+
const hdKey = HDKey.fromMasterSeed(seed);
|
|
406
|
+
const path = `m/44'/${coinType}'/${account}'/0/${index}`;
|
|
407
|
+
const derived = hdKey.derive(path);
|
|
408
|
+
if (!derived.privateKey) throw new KeyError("derive", "Failed to derive private key from mnemonic");
|
|
409
|
+
super(derived.privateKey, isEth, bech32Prefix);
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* Generate a new mnemonic key with backup phrase.
|
|
413
|
+
*
|
|
414
|
+
* ⚠️ SECURITY WARNING:
|
|
415
|
+
* - The returned mnemonic provides FULL wallet recovery capability
|
|
416
|
+
* - Display to user for backup, then IMMEDIATELY discard from memory
|
|
417
|
+
* - NEVER log, store in database, or transmit the mnemonic
|
|
418
|
+
* - The mnemonic is NOT stored in the key instance
|
|
419
|
+
*
|
|
420
|
+
* @param options - Key generation options (derivation path, prefix, etc.)
|
|
421
|
+
* @returns Object containing the key and mnemonic for one-time backup
|
|
422
|
+
*
|
|
423
|
+
* @example
|
|
424
|
+
* ```typescript
|
|
425
|
+
* const { key, mnemonic } = MnemonicKey.generate()
|
|
426
|
+
*
|
|
427
|
+
* // Show mnemonic to user for backup
|
|
428
|
+
* displayBackupScreen(mnemonic)
|
|
429
|
+
*
|
|
430
|
+
* // After user confirms backup, clear the mnemonic
|
|
431
|
+
* // The key can be used for signing without the mnemonic
|
|
432
|
+
* ```
|
|
433
|
+
*/
|
|
434
|
+
static generate(options = {}) {
|
|
435
|
+
const mnemonic = generateMnemonic(wordlist, 256);
|
|
436
|
+
return {
|
|
437
|
+
key: new MnemonicKey({
|
|
438
|
+
...options,
|
|
439
|
+
mnemonic
|
|
440
|
+
}),
|
|
441
|
+
mnemonic
|
|
442
|
+
};
|
|
443
|
+
}
|
|
444
|
+
};
|
|
445
|
+
//#endregion
|
|
446
|
+
//#region src/key/hd-path.ts
|
|
447
|
+
/**
|
|
448
|
+
* SLIP-0044 Coin Type constants
|
|
449
|
+
*/
|
|
450
|
+
const COIN_TYPE = {
|
|
451
|
+
INITIA: 60,
|
|
452
|
+
ETHEREUM: 60,
|
|
453
|
+
COSMOS: 118
|
|
454
|
+
};
|
|
455
|
+
/**
|
|
456
|
+
* BIP-44 HD Path helper class
|
|
457
|
+
*
|
|
458
|
+
* Use with @scure/bip32 HDKey.derive()
|
|
459
|
+
*
|
|
460
|
+
* @example
|
|
461
|
+
* ```typescript
|
|
462
|
+
* import { HDKey } from '@scure/bip32'
|
|
463
|
+
*
|
|
464
|
+
* const hdKey = HDKey.fromMasterSeed(seed)
|
|
465
|
+
* const derived = hdKey.derive(HDPath.initia().toString())
|
|
466
|
+
* ```
|
|
467
|
+
*/
|
|
468
|
+
var HDPath = class HDPath {
|
|
469
|
+
constructor(purpose_, coinType_, account_, change_, index_) {
|
|
470
|
+
this.purpose_ = purpose_;
|
|
471
|
+
this.coinType_ = coinType_;
|
|
472
|
+
this.account_ = account_;
|
|
473
|
+
this.change_ = change_;
|
|
474
|
+
this.index_ = index_;
|
|
475
|
+
}
|
|
476
|
+
static initia(index = 0) {
|
|
477
|
+
return new HDPath(44, COIN_TYPE.INITIA, 0, 0, index);
|
|
478
|
+
}
|
|
479
|
+
static cosmos(index = 0) {
|
|
480
|
+
return new HDPath(44, COIN_TYPE.COSMOS, 0, 0, index);
|
|
481
|
+
}
|
|
482
|
+
static fromCoinType(coinType, index = 0, account = 0) {
|
|
483
|
+
return new HDPath(44, coinType, account, 0, index);
|
|
484
|
+
}
|
|
485
|
+
index(n) {
|
|
486
|
+
return new HDPath(this.purpose_, this.coinType_, this.account_, this.change_, n);
|
|
487
|
+
}
|
|
488
|
+
account(n) {
|
|
489
|
+
return new HDPath(this.purpose_, this.coinType_, n, this.change_, this.index_);
|
|
490
|
+
}
|
|
491
|
+
/** Path string for @scure/bip32 HDKey.derive() */
|
|
492
|
+
toString() {
|
|
493
|
+
return `m/${this.purpose_}'/${this.coinType_}'/${this.account_}'/${this.change_}/${this.index_}`;
|
|
494
|
+
}
|
|
495
|
+
get coinType() {
|
|
496
|
+
return this.coinType_;
|
|
497
|
+
}
|
|
498
|
+
get addressIndex() {
|
|
499
|
+
return this.index_;
|
|
500
|
+
}
|
|
501
|
+
};
|
|
502
|
+
//#endregion
|
|
503
|
+
//#region src/token/resolver.ts
|
|
504
|
+
function resolveTokenContract(client, chainType, token, sender) {
|
|
505
|
+
switch (chainType) {
|
|
506
|
+
case "minievm":
|
|
507
|
+
if (!token.startsWith("0x")) throw new Error(`Invalid token address for minievm: expected 0x-prefixed address, got "${token}"`);
|
|
508
|
+
return createErc20Token(client.evm, token, sender);
|
|
509
|
+
case "miniwasm":
|
|
510
|
+
if (token.startsWith("0x")) throw new Error(`Invalid token address for miniwasm: expected bech32 address, got "${token}"`);
|
|
511
|
+
return createCw20Token(client.wasm, token);
|
|
512
|
+
case "initia":
|
|
513
|
+
case "minimove": return createFungibleAssetToken(client.move, token);
|
|
514
|
+
default: throw new Error(`Token contract not supported for chain type "${chainType}". Use bank module queries (ctx.getBalance) for native denoms on unsupported chain types.`);
|
|
515
|
+
}
|
|
516
|
+
}
|
|
517
|
+
//#endregion
|
|
518
|
+
//#region src/client/create-client-cosmos.ts
|
|
519
|
+
function createClientWithConfig(chainInfo, transport, contextAuth, contextHeaders) {
|
|
520
|
+
const config = /* @__PURE__ */ createBaseConfig().build();
|
|
521
|
+
return wrapClientWithCache(createGrpcClient(transport, config.services, contextAuth, contextHeaders, config.registry), chainInfo.chainId);
|
|
522
|
+
}
|
|
523
|
+
//#endregion
|
|
524
|
+
//#region src/client/resolve-client.ts
|
|
525
|
+
const factories = {
|
|
526
|
+
initia: createClientWithConfig$1,
|
|
527
|
+
minievm: createClientWithConfig$2,
|
|
528
|
+
minimove: createClientWithConfig$3,
|
|
529
|
+
miniwasm: createClientWithConfig$4
|
|
530
|
+
};
|
|
531
|
+
const defaultFactory = createClientWithConfig;
|
|
532
|
+
/** Dispatch chainInfo.chainType to the correct per-chain client factory. */
|
|
533
|
+
function resolveClient(chainInfo, transport) {
|
|
534
|
+
return (factories[chainInfo.chainType] ?? defaultFactory)(chainInfo, transport);
|
|
535
|
+
}
|
|
536
|
+
const cosmosContextConfig = [/* @__PURE__ */ createBaseConfig(), {}];
|
|
537
|
+
//#endregion
|
|
538
|
+
export { HDPath as a, RawKey as c, COIN_TYPE as i, DEFAULT_BECH32_PREFIX as l, resolveClient as n, INIT_COIN_TYPE as o, resolveTokenContract as r, MnemonicKey as s, cosmosContextConfig as t, Key as u };
|
|
539
|
+
|
|
540
|
+
//# sourceMappingURL=cosmos-Bqh8qNfP.mjs.map
|