import type { AccountBalanceHistoryParams , GetCurrentFiatRatesParams , GetFiatRatesForTimestampsParams , GetFiatRatesTickersListParams , EstimateFeeParams , AccountInfoParams , } from './params' ; import type { AccountBalanceHistory } from './common' ; export interface Subscribe { subscribed : boolean ; } export interface ServerInfo { bestHash : string ; bestHeight : number ; block0Hash : string ; decimals : number ; name : string ; shortcut : string ; testnet : boolean ; version : string ; } export interface BlockHash { hash : string ; } export interface XPUBAddress { type : 'XPUBAddress' ; name : string ; path : string ; transfers : number ; balance : string ; totalSent : string ; totalReceived : string ; } export interface ERC20 { type : 'ERC20' ; name ? : string ; symbol ? : string ; contract : string ; balance ? : string ; decimals ? : number ; } export interface AccountInfo { address : string ; balance : string ; totalReceived : string ; totalSent : string ; txs : number ; unconfirmedBalance : string ; unconfirmedTxs : number ; page ? : number ; itemsOnPage : number ; totalPages : number ; nonTokenTxs ? : number ; transactions ? : Transaction [ ] ; nonce ? : string ; tokens ? : ( XPUBAddress | ERC20 ) [ ] ; erc20Contract ? : ERC20 ; } export interface AccountUtxoParams { descriptor : string ; } export type AccountUtxo = { txid : string ; vout : number ; value : string ; height : number ; address : string ; path : string ; confirmations : number ; coinbase ? : boolean ; } [ ] ; export interface VinVout { n : number ; addresses ? : string [ ] ; isAddress : boolean ; value ? : string ; coinbase ? : string ; txid ? : string ; vout ? : number ; sequence ? : number ; hex ? : string ; } export interface Transaction { txid : string ; version ? : number ; vin : VinVout [ ] ; vout : VinVout [ ] ; blockHeight : number ; blockHash ? : string ; confirmations : number ; blockTime : number ; value : string ; valueIn : string ; fees : string ; hex : string ; lockTime ? : number ; ethereumSpecific ? : { status : number ; nonce : number ; data ? : string ; gasLimit : number ; gasUsed ? : number ; gasPrice : string ; } ; tokenTransfers ? : { from ? : string ; to ? : string ; value : string ; token : string ; name : string ; symbol : string ; decimals ? : number ; } [ ] ; } export interface Push { result : string ; } export type Fee = { feePerUnit : string ; feePerTx ? : string ; feeLimit ? : string ; } [ ] ; export interface FiatRates { [ symbol ] : number | undefined ; } export interface BlockNotification { height : number ; hash : string ; } export interface AddressNotification { address : string ; tx : Transaction ; } export interface FiatRatesNotification { rates : FiatRates ; } export interface TimestampedFiatRates { ts : number ; rates : FiatRates ; } export interface FiatRatesForTimestamp { tickers : TimestampedFiatRates [ ] ; } export interface AvailableCurrencies { ts : number ; available_currencies : string [ ] ; } declare function FSend ( method ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method , params ) ; declare function FSend ( method ) ; declare function FSend ( method ) ; declare function FSend ( method ) ; declare function FSend ( method , params ) ; declare function FSend ( method ) ; export type Send = typeof FSend ;