/// import type { AccountInfo } from "@solana/spl-token"; import type { AccountInfo as BaseAccountInfo, Connection, TransactionInstruction } from "@solana/web3.js"; import { PublicKey } from "@solana/web3.js"; /** * Get a authority token account address * @param tokenMint The mint of token * @param owner The owner associated token address * @returns */ export declare function getAssociatedTokenAddress(tokenMint: PublicKey, owner: PublicKey): Promise; /** * Get a create associated token account instruction * @param tokenMint The mint of token * @param owner The owner associated token address * @param payer The pays for transaction * @returns */ export declare function createAssociatedTokenAccountInstruction(tokenMint: PublicKey, associatedAccount: PublicKey, owner: PublicKey, payer: PublicKey): TransactionInstruction; /** * Get the token account info by address * @param conn The connection to use * @param address The token account address * @returns */ export declare function getTokenAccount(conn: Connection, address: PublicKey): Promise; /** * Get the token accounts by owner * @param conn The connection to use * @param owner The owner address * @returns The token accounts */ export declare function getTokenAccounts(conn: Connection, owner: PublicKey): Promise; export declare function parseTokenAccountData(data: Buffer): AccountInfo; export declare function parseTokenAccount(account: BaseAccountInfo): AccountInfo; /** Instructions defined by the program */ export declare enum TokenInstruction { InitializeMint = 0, InitializeAccount = 1, InitializeMultisig = 2, Transfer = 3, Approve = 4, Revoke = 5, SetAuthority = 6, MintTo = 7, Burn = 8, CloseAccount = 9, FreezeAccount = 10, ThawAccount = 11, TransferChecked = 12, ApproveChecked = 13, MintToChecked = 14, BurnChecked = 15, InitializeAccount2 = 16, SyncNative = 17, InitializeAccount3 = 18, InitializeMultisig2 = 19, InitializeMint2 = 20 } export interface SyncNativeInstructionData { instruction: TokenInstruction.SyncNative; } /** TODO: docs */ export declare const syncNativeInstructionData: import("@solana/buffer-layout").Structure; /** * Construct a SyncNative instruction * * @param account Native account to sync lamports from * @param programId SPL Token program account * * @return Instruction to add to a transaction */ export declare function createSyncNativeInstruction(account: PublicKey, programId?: PublicKey): TransactionInstruction; //# sourceMappingURL=token.d.ts.map