rubic-sdk
Version:
Simplify dApp creation
45 lines (44 loc) • 2.46 kB
TypeScript
import { ExecuteTransactionBlockParams, SuiTransactionBlockResponse } from '@mysten/sui/client';
import BigNumber from 'bignumber.js';
import { Web3PrimitiveType } from "../../../models/web3-primitive-type";
import { ContractMulticallResponse } from "../models/contract-multicall-response";
import { MethodData } from "../models/method-data";
import { SupportedTokenField } from "../models/supported-token-field";
import { TxStatus } from "../models/tx-status";
import { Web3Public } from "../web3-public";
import { AbiItem } from 'web3-utils';
/**
* Class containing methods for calling contracts in order to obtain information from the blockchain.
* To send transaction or execute contract method use {@link Web3Private}.
*/
export declare class SuiWeb3Public extends Web3Public {
private readonly client;
constructor(url: string);
getBlockNumber(): Promise<number>;
multicallContractsMethods<Output extends Web3PrimitiveType>(_contractAbi: AbiItem[], _contractsData: {
contractAddress: string;
methodsData: MethodData[];
}[]): Promise<ContractMulticallResponse<Output>[][]>;
getTransactionStatus(hash: string): Promise<TxStatus>;
callForTokenInfo(tokenAddress: string, tokenFields?: SupportedTokenField[]): Promise<Partial<Record<SupportedTokenField, string>>>;
callForTokensInfo(tokenAddresses: string[] | ReadonlyArray<string>, _tokenFields?: SupportedTokenField[]): Promise<Partial<Record<SupportedTokenField, string>>[]>;
getBalance(userAddress: string, tokenAddress: string): Promise<BigNumber>;
getTokenBalance(address: string, tokenAddress: string): Promise<BigNumber>;
callContractMethod<T extends Web3PrimitiveType = string>(_contractAddress: string, _contractAbi: AbiItem[], _methodName: string, _methodArguments?: unknown[], _options?: {
from?: string;
value?: string;
gasPrice?: string;
gas?: string;
}): Promise<T>;
healthCheck(): Promise<boolean>;
/**
* Gets balance of multiple tokens.
* @param address Wallet address.
* @param tokensAddresses Tokens addresses.
*/
getTokensBalances(address: string, tokensAddresses: string[]): Promise<BigNumber[]>;
getAllowance(): Promise<BigNumber>;
setProvider(_provider: unknown): void;
static compareSuiAddress(addressA: string, addressB: string): boolean;
executeTxBlock(params: ExecuteTransactionBlockParams): Promise<SuiTransactionBlockResponse>;
}