@aptos-labs/ts-sdk
Version:
Aptos TypeScript SDK
73 lines • 2.67 kB
JavaScript
// Copyright © Aptos Foundation
// SPDX-License-Identifier: Apache-2.0
import { transferCoinTransaction } from "../internal/coin.js";
/**
* A class to handle all `Coin` operations.
* @group Coin
*/
export class Coin {
config;
/**
* Initializes a new instance of the Aptos client with the specified configuration.
* This allows you to interact with the Aptos blockchain using the provided settings.
*
* @param config - The configuration settings for the Aptos client.
*
* @example
* ```typescript
* import { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
*
* async function runExample() {
* // Create a new Aptos client with testnet configuration
* const config = new AptosConfig({ network: Network.TESTNET });
* const aptos = new Aptos(config);
*
* console.log("Aptos client initialized:", aptos);
* }
* runExample().catch(console.error);
* ```
* @group Coin
*/
constructor(config) {
this.config = config;
}
/**
* Generate a transfer coin transaction that can be simulated, signed, and submitted.
* This function helps you create a transaction to transfer a specified amount of coins
* from one account to another within the Aptos network.
*
* @param args The arguments for the transfer transaction.
* @param args.sender The sender account address.
* @param args.recipient The recipient account address.
* @param args.amount The amount of coins to transfer.
* @param args.coinType Optional. The coin struct type to transfer. Defaults to 0x1::aptos_coin::AptosCoin.
* @param args.options Optional. Additional options for generating the transaction.
*
* @returns SimpleTransaction
*
* @example
* ```typescript
* import { Aptos, AptosConfig, Network } from "@aptos-labs/ts-sdk";
*
* const config = new AptosConfig({ network: Network.TESTNET });
* const aptos = new Aptos(config);
*
* async function runExample() {
* // Generate a transfer coin transaction
* const transaction = await aptos.transferCoinTransaction({
* sender: "0x1", // replace with a real sender account address
* recipient: "0x2", // replace with a real recipient account address
* amount: 10,
* });
*
* console.log(transaction);
* }
* runExample().catch(console.error);
* ```
* @group Coin
*/
async transferCoinTransaction(args) {
return transferCoinTransaction({ aptosConfig: this.config, ...args });
}
}
//# sourceMappingURL=coin.js.map