UNPKG

myria-core-sdk

Version:

Latest version SDK

38 lines (37 loc) 1.46 kB
import Web3 from 'web3'; import { provider as Provider, PromiEvent, TransactionReceipt } from 'web3-core'; import { Contract, ContractSendMethod } from 'web3-eth-contract'; import { Address, CallOptions, SendOptions } from '../types/CommonTypes'; import { TxResult } from '../typesBundle'; export interface Json { abi: any; networks: { [network: number]: any; }; } export interface ContractInfo { contract: Contract; json: Json; isTest: boolean; } export default class MContract { [x: string]: any; private defaultOptions; web3: Web3; networkId: number; accountAddress: Address; contractInfo: ContractInfo; private currentTxHash; constructor(provider: Provider, networkId: number, web3: Web3, contractInfo: ContractInfo, sendOptions?: SendOptions); setDefaultAccount(account: Address): void; setProvider(provider: Provider, networkId: number): void; setContractProvider(contract: Contract, contractJson: Json, provider: Provider, networkId: number): void; call(method: ContractSendMethod, specificOptions?: CallOptions): Promise<any>; createTimeoutPromise(timeout: number, promi: PromiEvent<TransactionReceipt | string>): any; send(contract: Contract, method: ContractSendMethod, specificOptions?: SendOptions): Promise<TxResult>; private _send; private estimateGas; private toEstimateOptions; private toCallOptions; private toNativeSendOptions; }