UNPKG

@nosana/kit

Version:

Nosana KIT

30 lines (29 loc) 1.49 kB
import { Address, SolanaClient, Signature, IInstruction, TransactionMessageWithBlockhashLifetime, CompilableTransactionMessage, FullySignedTransaction, TransactionWithBlockhashLifetime } from 'gill'; import { NosanaClient } from '../index.js'; export declare class SolanaUtils { private readonly sdk; readonly rpc: SolanaClient["rpc"]; readonly rpcSubscriptions: SolanaClient["rpcSubscriptions"]; readonly sendAndConfirmTransaction: SolanaClient["sendAndConfirmTransaction"]; constructor(sdk: NosanaClient); pda(seeds: Array<Address | string>, programId: Address): Promise<Address>; getBalance(addressStr: string | Address): Promise<bigint>; getLatestBlockhash(): Promise<Readonly<{ blockhash: import("gill").Blockhash; lastValidBlockHeight: bigint; }>>; /** * Type guard to check if the input is a transaction */ private isTransaction; /** * Type guard to check if the input is a signed transaction */ private isSignedTransaction; /** * Create, sign, and send a transaction with proper logging and error handling * @param instructionsOrTransaction Single instruction, array of instructions, or pre-built transaction * @returns The transaction signature */ send(instructionsOrTransaction: IInstruction | IInstruction[] | CompilableTransactionMessage & TransactionMessageWithBlockhashLifetime | FullySignedTransaction & TransactionWithBlockhashLifetime): Promise<Signature>; }