import { AnyNumber } from '../types/index.mjs'; import { EndlessConfig } from './endlessConfig.mjs'; import { AccountAddressInput } from '../core/accountAddress.mjs'; import { A as Account } from '../Ed25519Account-JTDdDAW6.mjs'; import { InputGenerateTransactionOptions } from '../transactions/types.mjs'; import { SimpleTransaction } from '../transactions/instances/simpleTransaction.mjs'; import '../utils/apiEndpoints.mjs'; import '../types/indexer.mjs'; import '../utils/const.mjs'; import '../bcs/serializer.mjs'; import '../core/hex.mjs'; import '../core/common.mjs'; import '../bcs/deserializer.mjs'; import '../transactions/instances/transactionArgument.mjs'; import '../transactions/authenticator/account.mjs'; import '../core/crypto/ed25519.mjs'; import '../authenticationKey-BaHTUD3k.mjs'; import '../core/crypto/signature.mjs'; import '../core/crypto/privateKey.mjs'; import '../core/crypto/multiEd25519.mjs'; import '../core/crypto/multiKey.mjs'; import '../core/crypto/singleKey.mjs'; import '../core/crypto/bls12381.mjs'; import '../core/crypto/multiAuthKey.mjs'; import '../bcs/serializable/moveStructs.mjs'; import '../bcs/serializable/movePrimitives.mjs'; import '../bcs/serializable/fixedBytes.mjs'; import '../transactions/instances/rawTransaction.mjs'; import '../transactions/instances/chainId.mjs'; import '../transactions/instances/transactionPayload.mjs'; import '../transactions/instances/identifier.mjs'; import '../transactions/instances/moduleId.mjs'; import '../transactions/typeTag/index.mjs'; import '../transactions/instances/multiAgentTransaction.mjs'; /** * A class to query all `FungibleAsset` related queries on Endless. */ declare class FungibleAsset { readonly config: EndlessConfig; constructor(config: EndlessConfig); /** * Transfer `amount` of fungible asset from sender's primary store to recipient's primary store. * * Use this method to transfer any fungible asset including fungible token. * * @example * const transaction = await endless.transferFungibleAsset({ * sender: alice, * fungibleAssetMetadataAddress: "0x123", * recipient: "0x456", * amount: 5 * }) * * @param sender The sender account * @param fungibleAssetMetadataAddress The fungible asset account address. * For example if you’re transferring USDT this would be the USDT address * @param recipient The recipient account address * @param amount Number of assets to transfer * * @returns A SimpleTransaction that can be simulated or submitted to chain. */ transferFungibleAsset(args: { sender: Account; fungibleAssetMetadataAddress: AccountAddressInput; recipient: AccountAddressInput; amount: AnyNumber; options?: InputGenerateTransactionOptions; }): Promise; } export { FungibleAsset };