UNPKG

@avalanche-sdk/client

Version:

A TypeScript SDK for interacting with the Avalanche network through JSON-RPC APIs. This SDK provides a comprehensive set of tools to interact with all Avalanche chains (P-Chain, X-Chain, C-Chain) and various APIs, including wallet functionality for transa

38 lines 2.11 kB
import { AvalancheWalletCoreClient } from "../../../clients/createAvalancheWalletCoreClient.js"; import { PrepareAddPermissionlessDelegatorTxnParameters, PrepareAddPermissionlessDelegatorTxnReturnType } from "./types/prepareAddPermissionlessDelegatorTxn.js"; /** * Prepares an add permissionless delegator transaction for the P-chain. * * @param client - The client to use for the transaction. {@link AvalancheWalletCoreClient} * @param params - The parameters for the transaction. {@link PrepareAddPermissionlessDelegatorTxnParameters} * @returns The unsigned transaction. {@link PrepareAddPermissionlessDelegatorTxnReturnType} * * @see https://build.avax.network/docs/api-reference/p-chain/txn-format#unsigned-add-permissionless-delegator-tx * * @example * ```ts * import { prepareAddPermissionlessDelegatorTxn } from "@avalanche-sdk/client/methods/wallet/pChain/prepareAddPermissionlessDelegatorTxn"; * import { createAvalancheWalletClient } from "@avalanche-sdk/client/clients/createAvalancheWalletClient"; * import { privateKeyToAvalancheAccount } from "@avalanche-sdk/client/accounts"; * import { avalanche } from "@avalanche-sdk/client/chains"; * import { avaxToNanoAvax } from "@avalanche-sdk/client/utils"; * * const account = privateKeyToAvalancheAccount("0x1234567890123456789012345678901234567890"); * const walletClient = createAvalancheWalletClient({ * account, * chain: avalanche, * }); * * const pChainAddPermissionlessDelegatorTxnRequest = await prepareAddPermissionlessDelegatorTxn(walletClient, { * nodeId: "NodeID-7Xhw2mDxuDS44j42TCB6U5579esbSt3Lg", * stakeInAvax: avaxToNanoAvax(1), * end: 1716441600n, * rewardAddresses: ["P-fuji19fc97zn3mzmwr827j4d3n45refkksgms4y2yzz"], * threshold: 1, * }); * * console.log(pChainAddPermissionlessDelegatorTxnRequest); * ``` */ export declare function prepareAddPermissionlessDelegatorTxn(client: AvalancheWalletCoreClient, params: PrepareAddPermissionlessDelegatorTxnParameters): Promise<PrepareAddPermissionlessDelegatorTxnReturnType>; //# sourceMappingURL=prepareAddPermissionlessDelegatorTxn.d.ts.map