import BigNumber from '@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber'; import { TypedSubstrateAddress } from '../data/account/address/SubstrateAddressFactory'; import { SubstrateAccountInfo } from '../data/account/SubstrateAccountInfo'; import { SubstrateCall } from '../data/metadata/decorator/call/SubstrateCall'; import { SubstrateRuntimeVersion } from '../data/state/SubstrateRuntimeVersion'; import { SubstrateTransactionType } from '../data/transaction/SubstrateTransaction'; import { SubstrateProtocolConfiguration } from '../types/configuration'; export interface SubstrateNodeClient { getAccountInfo(address: TypedSubstrateAddress): Promise; getExistentialDeposit(): Promise; getBlockTime(): Promise; getFirstBlockHash(): Promise; getLastBlockHash(): Promise; getCurrentHeight(): Promise; getRuntimeVersion(): Promise; getTransferFeeEstimate(transaction: Uint8Array | string): Promise; saveLastFee(type: SubstrateTransactionType, fee: BigNumber): void; getSavedLastFee(type: SubstrateTransactionType, defaultValue: 'undefined' | 'largest'): BigNumber | undefined; getTransactionMetadata(type: SubstrateTransactionType): Promise; submitTransaction(encoded: string): Promise; }