UNPKG

@koyofinance/react-query-typechain

Version:
21 lines 1.83 kB
import type { BigNumber, Contract, ContractReceipt, ContractTransaction, Signer } from 'ethers'; import { UseMutationResult } from 'react-query'; import { TransactionError } from '../../base/TransactionError'; import { TransactionStatus } from '../../base/TransactionStatus'; import type { ContractMethodArgs, ContractMethodName } from '../../types'; export interface UseSmartContractTransactionOptions<TContract extends Contract, TMethodName extends ContractMethodName<TContract>> { blockConfirmations?: number; /** * Sets the gas limit on the transaction, overriding anything that was * provided when the `mutate` function is called. Useful if you need to buffer * the default gas estimate by some amount. */ setGasLimit?: (gasEstimate: BigNumber) => BigNumber; onTransactionSubmitted?: (transaction: ContractTransaction, callArgs: ContractMethodArgs<TContract, TMethodName>) => void | Promise<void>; onTransactionMined?: (transactionReceipt: ContractReceipt, callArgs: ContractMethodArgs<TContract, TMethodName>, transactionStatus: TransactionStatus) => void | Promise<void>; onError?: (error: TransactionError) => void | Promise<void>; } declare type UseSmartContractTransactionResult<TContract extends Contract, TMethodName extends ContractMethodName<TContract>> = UseMutationResult<ContractReceipt | undefined, unknown, ContractMethodArgs<TContract, TMethodName>>; export declare function useSmartContractTransaction<TContract extends Contract, TMethodName extends ContractMethodName<TContract>>(contract: TContract | undefined, methodName: TMethodName, signer: Signer | undefined, options?: UseSmartContractTransactionOptions<TContract, TMethodName>): UseSmartContractTransactionResult<TContract, TMethodName>; export {}; //# sourceMappingURL=useSmartContractTransaction.d.ts.map