import { type DynamicClient } from '@dynamic-labs-sdk/client'; import type { TransactionReceipt } from 'viem'; import type { EvmWalletAccount } from '../../EvmWalletAccount.types'; type ApproveErc20IfRequiredAndWaitReceiptParams = { amount: string; spenderAddress: string; tokenAddress: string; walletAccount: EvmWalletAccount; }; /** * Approves an ERC-20 token if the current allowance is insufficient and waits for the transaction receipt. * * @param params.amount - The amount of tokens to approve. * @param params.ownerAddress - The address that granted the allowance. * @param params.spenderAddress - The address allowed to spend the tokens. * @param params.tokenAddress - The ERC-20 token contract address. * @param params.walletAccount - The EVM wallet account used to resolve the active network. * @param client - The Dynamic client instance. * @returns The transaction receipt if an approval was sent, otherwise undefined. * @not-instrumented */ export declare const approveErc20IfRequiredAndWaitReceipt: ({ amount, spenderAddress, tokenAddress, walletAccount, }: ApproveErc20IfRequiredAndWaitReceiptParams, client: DynamicClient) => Promise<{ receipt: TransactionReceipt; } | undefined>; export {}; //# sourceMappingURL=approveErc20IfRequiredAndWaitReceipt.d.ts.map