import type { Connection } from "@solana/web3.js"; import { PublicKey } from "@solana/web3.js"; import type BN from "bn.js"; import type { Instruction } from "../web3"; export type ResolvedTokenAddressInstruction = { address: PublicKey; tokenProgram: PublicKey; } & Instruction; export type WrappedSolAccountCreateMethod = "keypair" | "withSeed" | "ata"; export declare class TokenUtil { static isNativeMint(mint: PublicKey): boolean; static createWrappedNativeAccountInstruction(owner: PublicKey, amountIn: BN, rentExemptLamports: number, payer?: PublicKey, unwrapDestination?: PublicKey, createAccountMethod?: WrappedSolAccountCreateMethod): ResolvedTokenAddressInstruction; static createSendTokensToWalletInstruction(connection: Connection, sourceWallet: PublicKey, destinationWallet: PublicKey, tokenMint: PublicKey, tokenDecimals: number, amount: BN, getAccountRentExempt: () => Promise, payer?: PublicKey, allowPDASourceWallet?: boolean): Promise; }