Skip to content

useExecute

Hook to execute a msg as the account.

Import

import { useExecute } from '@abstract-money/react'

Usage

index.tsx
import { useExecute } from '@abstract-money/react'
import { stringToAccountId } from '@abstract-money/core'
 
function App() {
  const execute = useExecute({
    accountId: stringToAccountId('pion-1'),
    chainName: 'pion',
  })
 
  return (
    <button
      onClick={() =>
        execute.mutate({
          fee: 'auto',
          funds: [
            {
              denom: 'uatom',
              amount: '1000000',
            },
          ],
          args: {
            msgs: [
              {
                bank: {
                  send: {
                    amount: [
                      {
                        amount: '1000000',
                        denom: 'uatom',
                      },
                    ],
                    to_address: 'cosmos1...',
                  },
                },
              },
            ],
          },
        })
      }
    >
      execute
    </button>
  )
}

Hook Parameters

accountId

AccountId | undefined

Account Id to be used to fetch the query.

chainName

string | undefined

Name of the chain to be used to fetch the query.

mutation

MutationOptions | undefined

MutationOptions to use.

Mutation Parameters

fee

number | StdFee | "auto"

The fee to be paid for the transaction. Can be a number, a StdFee object, or "auto" for automatic fee calculation.

memo (optional)

string | undefined

An optional memo to attach to the transaction.

funds

An array of coin objects representing the funds to be sent with the transaction. Each object contains:

  • denom: The denomination of the coin
  • amount: The amount of the coin

args

Arguments passed to the mutation. This includes:

msgs

AccountMsg

The CosmosMsg to be executed on the remote account.