UNPKG

@aptos-labs/ts-sdk

Version:
182 lines (179 loc) 6.14 kB
import { AptosConfig } from './aptosConfig.mjs'; import { LedgerInfo, AnyNumber, Block, MoveValue, LedgerVersionArg } from '../types/index.mjs'; import { ProcessorType } from '../utils/const.mjs'; import { InputViewFunctionData } from '../transactions/types.mjs'; import { GetChainTopUserTransactionsResponse, GraphqlQuery, GetProcessorStatusResponse } from '../types/indexer.mjs'; import '../utils/apiEndpoints.mjs'; import '../types/generated/operations.mjs'; import '../types/generated/types.mjs'; import '../bcs/serializable/moveStructs.mjs'; import '../bcs/serializable/movePrimitives.mjs'; import '../bcs/deserializer.mjs'; import '../bcs/serializer.mjs'; import '../core/hex.mjs'; import '../core/common.mjs'; import '../transactions/instances/transactionArgument.mjs'; import '../bcs/serializable/fixedBytes.mjs'; import '../core/accountAddress.mjs'; import '../publicKey-B3XRNhHO.mjs'; import '../core/crypto/signature.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/authenticator/account.mjs'; import '../core/crypto/ed25519.mjs'; import '../core/crypto/privateKey.mjs'; import '../core/crypto/multiEd25519.mjs'; import '../core/crypto/multiKey.mjs'; import '../core/crypto/singleKey.mjs'; import '../transactions/instances/simpleTransaction.mjs'; import '../transactions/instances/multiAgentTransaction.mjs'; /** * A class to query all `General` Aptos related queries */ declare class General { readonly config: AptosConfig; constructor(config: AptosConfig); /** * Queries for the Aptos ledger info * * @returns Aptos Ledger Info * * @example * const ledgerInfo = await aptos.getLedgerInfo() * // an example of the returned data * ``` * { * "chain_id": 4, * "epoch": "8", * "ledger_version": "714", * "oldest_ledger_version": "0", * "ledger_timestamp": "1694695496521775", * "node_role": "validator", * "oldest_block_height": "0", * "block_height": "359", * "git_hash": "c82193f36f4e185fed9f68c4ad21f6c6dd390c6e" * } * ``` */ getLedgerInfo(): Promise<LedgerInfo>; /** * Queries for the chain id * * @example * const chainId = await aptos.getChainId() * * @returns The chain id */ getChainId(): Promise<number>; /** * Queries for block by transaction version * * @example * const block = await aptos.getBlockByVersion({ledgerVersion:5}) * * @param args.ledgerVersion Ledger version to lookup block information for * @param args.options.withTransactions If set to true, include all transactions in the block * * @returns Block information with optional transactions */ getBlockByVersion(args: { ledgerVersion: AnyNumber; options?: { withTransactions?: boolean; }; }): Promise<Block>; /** * Get block by block height * * @example * const block = await aptos.getBlockByVersion({blockHeight:5}) * * @param args.blockHeight Block height to lookup. Starts at 0 * @param args.options.withTransactions If set to true, include all transactions in the block * * @returns Block with optional transactions */ getBlockByHeight(args: { blockHeight: AnyNumber; options?: { withTransactions?: boolean; }; }): Promise<Block>; /** * Queries for a Move view function * @param args.payload Payload for the view function * @param args.options.ledgerVersion The ledger version to query, if not provided it will get the latest version * * @example * const data = await aptos.view({ * payload: { * function: "0x1::coin::balance", * typeArguments: ["0x1::aptos_coin::AptosCoin"], * functionArguments: [accountAddress], * } * }) * * @returns an array of Move values */ view<T extends Array<MoveValue>>(args: { payload: InputViewFunctionData; options?: LedgerVersionArg; }): Promise<T>; /** * Queries top user transactions * * @example * const topUserTransactions = await aptos.getChainTopUserTransactions({limit:5}) * * @param args.limit The number of transactions to return * @returns GetChainTopUserTransactionsResponse */ getChainTopUserTransactions(args: { limit: number; }): Promise<GetChainTopUserTransactionsResponse>; /** * A generic function for retrieving data from Aptos Indexer. * For more detailed queries specification see * {@link https://cloud.hasura.io/public/graphiql?endpoint=https://api.mainnet.aptoslabs.com/v1/graphql} * * @example * const topUserTransactions = await aptos.queryIndexer({ * query: `query MyQuery { * ledger_infos { * chain_id * }}`; * }) * * @param args.query.query A GraphQL query * @param args.query.variables The variables for the query * * @return The provided T type */ queryIndexer<T extends {}>(args: { query: GraphqlQuery; }): Promise<T>; /** * Queries for the last successful indexer version * * This is useful to tell what ledger version the indexer is updated to, as it can be behind the full nodes. * * @example * const version = await aptos.getIndexerLastSuccessVersion() */ getIndexerLastSuccessVersion(): Promise<bigint>; /** * Query the processor status for a specific processor type. * * @example * const status = await aptos.getProcessorStatus({processorType:"account_transactions_processor"}) * * @param processorType The processor type to query * @returns */ getProcessorStatus(processorType: ProcessorType): Promise<GetProcessorStatusResponse[0]>; } export { General };