import type { DynamicClient } from '@dynamic-labs-sdk/client'; import type { EvmWalletAccount } from '../../EvmWalletAccount.types'; type ApproveErc20Params = { amount: bigint; spenderAddress: string; tokenAddress: string; walletAccount: EvmWalletAccount; }; /** * Sends an ERC-20 `approve` transaction, granting a spender an allowance * to transfer tokens on behalf of the wallet account. * * Encodes the `approve(spender, amount)` call using viem's `encodeFunctionData` * and sends it through the wallet account's viem wallet client. * * @param params.amount - The amount to approve in the token's smallest unit. * @param params.spenderAddress - The address being granted the allowance. * @param params.tokenAddress - The ERC-20 token contract address. * @param params.walletAccount - The EVM wallet account sending the approval. * @param client - The Dynamic client instance. * @returns The approval transaction hash. * @not-instrumented */ export declare const approveErc20: ({ amount, spenderAddress, tokenAddress, walletAccount }: ApproveErc20Params, client: DynamicClient) => Promise<{ transactionHash: string; }>; export {}; //# sourceMappingURL=approveErc20.d.ts.map