import { PublicKey } from '@solana/web3.js'; import { Amount, EthersSignedTransaction, SPLToken } from 'token-transfer-core-2022'; import { Wallet } from 'ethers'; /** * Generates the transaction data for claiming tokens on the Neon EVM. * * This function encodes the function call data required to claim tokens from an SPL token * account to a specified Neon wallet address. * * @param {PublicKey} associatedToken - The associated SPL token account. * @param {string} neonWallet - The Ethereum-style Neon wallet address. * @param {Amount} amount - The amount to be claimed. * @returns {string} Encoded function call data for the claim transaction. * * @example * ```typescript * const txData = claimTransactionData(associatedTokenPK, "0x1234567890abcdef...", amount); * ``` */ export declare function claimTransactionData(associatedToken: PublicKey, neonWallet: string, amount: Amount): string; /** * Generates encoded transaction data for withdrawing NEON tokens from Neon EVM to Solana. * * This function prepares the encoded function call data required for interacting with * the Neon EVM contract to withdraw NEON tokens to a specified Solana wallet. It is primarily * used in **Neon-to-Solana transfers**, such as in `neonNeonTransactionEthers`, to create * an **Ethers.js** compatible transaction request. * * @param {PublicKey} solanaWallet - The Solana wallet public key that will receive the withdrawn NEON tokens. * @returns {string} Encoded function call data for the withdrawal transaction. * * @example * ```typescript * const data = neonTransactionData(solanaWallet); * const transactionRequest = await neonNeonTransactionEthers({ * from: "0xSenderAddress", * to: "0xRecipientContractAddress", * solanaWallet, * amount: "1.0", * provider * }); * ``` */ export declare function neonTransactionData(solanaWallet: PublicKey): string; /** * Generates encoded transaction data for transferring ERC-20 tokens from Neon EVM to Solana. * * This function prepares the encoded function call data required to transfer ERC-20 tokens * from the Neon EVM network to an associated SPL token account on Solana. It is primarily * used in `createMintNeonTransactionEthers` to create an **Ethers.js** compatible * transaction request for cross-chain token transfers. * * @param {PublicKey} associatedToken - The associated SPL token account that will receive the minted tokens. * @param {SPLToken} splToken - The SPL token information, including its decimals and contract details. * @param {Amount} amount - The amount of tokens to be transferred from Neon EVM to Solana. * @returns {string} Encoded function call data for the Neon-to-Solana token transfer transaction. * * @example * ```typescript * const data = mintNeonTransactionData(associatedToken, splToken, amount); * const transactionRequest = await createMintNeonTransactionEthers({ * provider, * neonWallet: "0xNeonWalletAddress", * associatedToken: "AssociatedTokenAddressOnSolana", * splToken, * amount: 1 * }); * ``` */ export declare function mintNeonTransactionData(associatedToken: PublicKey, splToken: SPLToken, amount: Amount): string; /** * Generates the transaction data for withdrawing wrapped Neon tokens. * * This function encodes the function call data required to withdraw wrapped Neon tokens * from a smart contract. * * @param {SPLToken} token - The SPL token representing the wrapped Neon asset. * @param {Amount} amount - The amount to withdraw. * @returns {string} Encoded function call data for the wrapped Neon withdrawal transaction. * * @example * ```typescript * const txData = wrappedNeonTransactionData(wrappedToken, amount); * ``` */ export declare function wrappedNeonTransactionData(token: SPLToken, amount: Amount): string; /** * Signs and prepares a transaction using an Ethers wallet signer. * * This function constructs an Ethereum transaction request and signs it using the provided wallet signer. * * @param {string} claimData - The encoded transaction data. * @param {Wallet} walletSigner - The Ethers.js wallet signer instance. * @param {string} address - The recipient contract address. * @returns {Promise} A promise resolving to the signed transaction data. * * @example * ```typescript * const signedTx = await useTransactionFromSignerEthers(txData, walletSigner, contractAddress); * ``` */ export declare function useTransactionFromSignerEthers(claimData: string, walletSigner: Wallet, address: string): Promise; //# sourceMappingURL=transactions.d.ts.map