import Big from 'big.js'; import { EthereumConfigAsset, NativeAsset, AppConfig } from '../types/config.js'; import { JsonRpcApiProvider, TransactionRequest } from 'ethers'; import { WrapStatus, TxHash } from './models.js'; /** * Transfer from Ethereum to Avalanche. * * @param wrappedAsset - must be provided when asset is of AssetType.NATIVE * @param signAndSendEVM - Optional, provide when NOT using Metamask. Some * providers like `InfuraProvider` don't support `getSigner` so * `signAndSendEVM` is used to manually sign and send the transaction instead of calling * `contract.transfer`. */ declare function wrapAsset(amount: Big, account: string, asset: EthereumConfigAsset | NativeAsset, avalancheProvider: JsonRpcApiProvider, ethereumProvider: JsonRpcApiProvider, config: AppConfig, onStatusChange: (status: WrapStatus) => void, onTxHashChange: (txHash: string) => void, signAndSendEVM?: (txData: TransactionRequest) => Promise): Promise; export { wrapAsset };