useAccount
Retrieves the current fuel account and returns the account address <string | null>
.
const { account } = useAccount();
console.log(account);
// fuel1r20zhd...
useAccounts
Retrieves the fuel accounts and returns the addresses of the accounts <string[]>
const { accounts } = useAccounts();
console.log(accounts);
// [fuel1r20zhd..., fuel1qqluc9..., ...]
useBalance
Fetches the balance <BN | null>
of a specified address and asset ID. Additionally, it includes a listener that triggers a balance refresh when the window gains focus.
const { balance } = useBalance({
address: 'fuel1r20zhd...',
assetId: '0x000000000...',
});
console.log(balance);
// 1000 (example balance)
useChain
Fetches information about the current Fuel network <ChainInfo | null>
.
const { chain } = useChain();
console.log(chain.name);
useConnect
Facilitates the connection to the Fuel wallet. Allows selecting a connector by name. It also provides a function UseMutateAsyncFunction<boolean | undefined>
to initiate the connection and relevant mutation properties for managing the connection state.
const { connect, connectAsync } = useConnect();
const handleConnect = async () => {
connect('Fuel Wallet');
// Async way
await connectAsync('exampleConnectorName');
};
handleConnect();
useConnectors
Retrieves a list of available connectors Array<FuelConnector>
for connecting to Fuel.
const { connectors } = useConnectors();
console.log(connectors);
useContractRead
Reads and calls a method from a Fuel contract, returns <InvokeFunctions>
.
const { contractRead } = useContractRead({
contract: _contract,
functionName: 'get_count',
args: undefined,
});
const { contractRead } = useContractRead({
contract: { address, abi: countAbi, provider },
functionName: 'get_count',
args: undefined,
});
For more information on our Provider, refer to our TS SDK docs
Click here to see an example of an ABI for a Fuel contract
useDisconnect
Facilitates disconnection from the Fuel Wallet. It provides a function UseMutateAsyncFunction<boolean | undefined>
to initiate disconnection.
const { disconnect } = useDisconnect();
const handleDisconnect = async () => {
disconnect();
// Async way
await disconnectAsync();
};
handleDisconnect();
useIsConnected
Checks whether the user is connected to the Fuel protocol. It provides a boolean
indicating the connection.
const { isConnected } = useIsConnected();
console.log(isConnected);
// true
useNodeInfo
Asynchronously retrieves information about the connected node, checks compatibility with a specified version. The function returns isCompatible
(a <boolean>
), and node information.
const { isCompatible } = useNodeInfo();
useProvider
Returns the provider from the Fuel object instance.
const { provider } = useProvider();
useSendTransaction
Hook for signing and sending transactions to the Fuel network.
const { sendTransaction, sendTransactionAsync } = useSendTransaction();
const handleSendTransaction = async () => {
// The amount of coins to transfer.
const amount = bn(1);
// Create a transaction request using wallet helper (check useWallet hook if needed)
const transactionRequest = await wallet.createTransfer(
destination,
amount
);
sendTransaction({
address: '0xd7ad97...', // The address to sign the transaction
transactionRequest,
})
// Async way
await sendTransactionAsync({
address: '0xd7ad97...', // The address to sign the transaction
transactionRequest,
});
};
handleSendTransaction();
useTransaction
Retrieves transaction information associated with a specific transaction ID.
const { transaction } = useTransaction({ txId: '0xd7ad97...' });
useTransactionReceipts
Retrieves transaction receipts Array<TransactionResultReceipt>
associated with a specific transaction ID using the useFuel
hook.
const { transactionReceipts } = useTransactionReceipts({
txId: '0xd7ad97...',
});
useTransactionResult
Retrieves a transaction result associated with a specific transaction ID.
const { transactionResult } = useTransactionResult({ txId: '0xd7ad97...' });
Customize the data
attribute of the most recently resolved data.
const { anything } = useTransactionResult({
txId: '0xd7ad97...',
query: {
name: 'anything',
},
});
Transform or select a specific part of the data returned by the query function.
This modification affects the returned data value but does not impact the data stored in the query cache.
const { receipts } = useTransactionResult({
txId: '0xd7ad97...',
query: {
// you can omit custom "name" if you don't need it
name: 'receipts',
// ((data: TransactionResult<TransactionType> | null) => T) | undefined
select: (data) => data?.receipts,
},
});
useWallet
Retrieves wallet instance <Account | null>
and ensures the presence of a valid address and fuel instance.
const { wallet } = useWallet({ address: 'fuel1r20zhd...' });