import { ethers } from 'ethers';
import { ChainAddress } from "@wormhole-foundation/sdk";
import { Wormhole, TransferState, wormhole, amount, TokenTransfer} from "@wormhole-foundation/sdk";
import cosmwasm from "@wormhole-foundation/sdk/cosmwasm";
import solana from "@wormhole-foundation/sdk/solana";
import evm from "@wormhole-foundation/sdk/evm";
import * as relay from "./relay.js"
import { exit } from 'process';
import 'dotenv/config';
const CLO_BSC_ADDRESS = "0x81D3A238b02827F62B9f390f947D36d4A5bf89D2";
const CLO_DECIMALS = 18;
async function bridgeCloBscToSei(momey:string) {
const wh = await wormhole("Mainnet", [evm]);
const bsc = wh.getChain("Bsc");
const sei = wh.getChain("Seievm"); //Seievm和Sei
const wrapper_evm = await evm();
const source = await wrapper_evm.getSigner(await bsc.getRpc(), process.env.PRIVATE_KEY!);
const destination = await wrapper_evm.getSigner(await sei.getRpc(), process.env.PRIVATE_KEY!);
const token = Wormhole.tokenId(bsc.chain, CLO_BSC_ADDRESS);
const amt = amount.units(amount.parse(momey, CLO_DECIMALS));
const sourceAddress = Wormhole.chainAddress(bsc.chain, source.address());
const destAddress = Wormhole.chainAddress(sei.chain, destination.address());
const xfer = await wh.tokenTransfer(
token,
amt,
sourceAddress,
destAddress,
"TokenBridge"
);
if (xfer.transfer.protocol === "TokenBridge"){
const quote = await TokenTransfer.quoteTransfer(
wh,
bsc,
sei,
xfer.transfer,
);
console.log(quote);
}
}
Error: Token 0x00000000000000000000000081d3a238b02827f62b9f390f947d36d4a5bf89d2 is not a wrapped asset
at ErrNotWrapped (file:///D:/notes/Projects/crypto_ts/node_modules/@wormhole-foundation/sdk-definitions/dist/esm/protocols/tokenBridge/tokenBridge.js:5:41)
at EvmTokenBridge.getWrappedAsset (file:///D:/notes/Projects/crypto_ts/node_modules/@wormhole-foundation/sdk-evm-tokenbridge/dist/esm/tokenBridge.js:67:19)
at process.processTicksAndRejections (node:internal/process/task_queues:103:5)
at async TokenTransfer.lookupDestinationToken (file:///D:/notes/Projects/crypto_ts/node_modules/@wormhole-foundation/sdk-connect/dist/esm/protocols/tokenBridge/tokenTransfer.js:422:28)
at async TokenTransfer.quoteTransfer (file:///D:/notes/Projects/crypto_ts/node_modules/@wormhole-foundation/sdk-connect/dist/esm/protocols/tokenBridge/tokenTransfer.js:570:26)
at async bridgeCloBscToSei (file:///D:/notes/Projects/crypto_ts/apps/clo_bsc2sei/dist/wormhole_clo_bsc2sei.js:64:23)
get errors