import { Commitment, Connection, Keypair, PublicKey, Signer, TransactionInstruction } from "@solana/web3.js"; import { InstructionType, TxVersion } from "../base"; import { BigNumberish } from "../entity"; export declare class Spl { static getAssociatedTokenAccount({ mint, owner }: { mint: PublicKey; owner: PublicKey; }): PublicKey; static makeCreateAssociatedTokenAccountInstruction({ mint, associatedAccount, owner, payer, instructionsType, }: { mint: PublicKey; associatedAccount: PublicKey; owner: PublicKey; payer: PublicKey; instructionsType: InstructionType[]; }): TransactionInstruction; static makeCreateWrappedNativeAccountInstructions({ connection, owner, payer, amount, commitment, }: { connection: Connection; owner: PublicKey; payer: PublicKey; amount: BigNumberish; commitment?: Commitment; }): Promise<{ address: { newAccount: PublicKey; }; innerTransaction: { instructions: TransactionInstruction[]; signers: Keypair[]; lookupTableAddress: any[]; instructionTypes: InstructionType[]; supportedVersion: TxVersion[]; }; }>; static insertCreateWrappedNativeAccount({ connection, owner, payer, amount, instructions, instructionsType, signers, commitment, }: { connection: Connection; owner: PublicKey; payer: PublicKey; amount: BigNumberish; instructions: TransactionInstruction[]; instructionsType: InstructionType[]; signers: Signer[]; commitment?: Commitment; }): Promise; static makeInitMintInstruction({ mint, decimals, mintAuthority, freezeAuthority, instructionTypes }: { mint: PublicKey; decimals: number; mintAuthority: PublicKey; freezeAuthority?: PublicKey | null; instructionTypes: InstructionType[]; }): TransactionInstruction; static makeMintToInstruction({ mint, dest, authority, amount, multiSigners, instructionTypes, }: { mint: PublicKey; dest: PublicKey; authority: PublicKey; amount: BigNumberish; multiSigners?: Signer[]; instructionTypes: InstructionType[]; }): TransactionInstruction; static makeInitAccountInstruction({ mint, tokenAccount, owner, instructionTypes, }: { mint: PublicKey; tokenAccount: PublicKey; owner: PublicKey; instructionTypes: InstructionType[]; }): TransactionInstruction; static makeTransferInstruction({ source, destination, owner, amount, multiSigners, instructionsType }: { source: PublicKey; destination: PublicKey; owner: PublicKey; amount: BigNumberish; multiSigners?: Signer[]; instructionsType: InstructionType[]; }): TransactionInstruction; static makeCloseAccountInstruction({ tokenAccount, owner, payer, multiSigners, instructionsType }: { tokenAccount: PublicKey; owner: PublicKey; payer: PublicKey; multiSigners?: Signer[]; instructionsType: InstructionType[]; }): TransactionInstruction; static createInitAccountInstruction(programId: any, mint: any, account: any, owner: any): TransactionInstruction; }