import { PublicClient, WalletClient } from 'viem'; export declare const MAINNET_APE_COIN_ADDRESS: `0x${string}`; export declare const GOERLI_APE_COIN_ADDRESS: `0x${string}`; /** * Converts a value in Wei (assuming 18 decimals) to its equivalent in a specific ERC20 token's decimal format. * * @param client - The client to use for reading the ERC20 token's decimals. * @param erc20address - The Ethereum address of the ERC20 token, prefixed with `0x`. * @param value - The value in Wei, based on 18 decimals. * @returns The value converted to the token's decimal format. */ export declare const convertWeiToERC20Decimals: (client: PublicClient, erc20address: `0x${string}`, value: bigint) => Promise; /** * Converts an ERC20 token amount (in its native decimal format) back to its equivalent in Wei (18 decimals). * * @param client - The client to use for reading the ERC20 token's decimals. * @param erc20address - The Ethereum address of the ERC20 token, prefixed with `0x`. * @param value - The ERC20 token amount in its native decimals. * @returns The value converted back to Wei format. */ export declare const convertERC20DecimalsToWei: (client: PublicClient, erc20address: `0x${string}`, value: bigint) => Promise; /** * Gets the balance of an ERC20 token for a specific address. * * @param client - The client to use for reading the ERC20 token's decimals. * @param erc20address - The Ethereum address of the ERC20 token, prefixed with `0x`. * @param address - The Ethereum address of the account, prefixed with `0x`. * @returns The balance in ERC20 token's decimal format. */ export declare const getBalance: (client: PublicClient, erc20address: `0x${string}`, address: `0x${string}`) => Promise; /** * Gets the allowance of an ERC20 token for a specific address. * * @param client - The client to use for reading the ERC20 token's decimals. * @param erc20address - The Ethereum address of the ERC20 token, prefixed with `0x`. * @param owner - The Ethereum address of the account, prefixed with `0x`. * @param spender - The Ethereum address of the spender, prefixed with `0x`. * @returns The allowance in ERC20 token's decimal format. */ export declare const getAllowance: (client: PublicClient, erc20address: `0x${string}`, owner: `0x${string}`, spender: `0x${string}`) => Promise; /** * Increases the allowance of an ERC20 token for a specific address. * * @param client - The client to use for reading the ERC20 token's decimals. * @param walletClient - The client to use for writing the transaction. * @param erc20address - The Ethereum address of the ERC20 token, prefixed with `0x`. * @param address - The Ethereum address of the account, prefixed with `0x`. * @param amount - The amount to increase the allowance by, in ERC20 token's decimal format. * @returns The allowance in ERC20 token's decimal format. */ export declare const increaseAllowance: (client: PublicClient, walletClient: WalletClient, erc20address: `0x${string}`, address: `0x${string}`, amount: bigint) => Promise<`0x${string}`>;