import { Tx } from './transactions'; export interface Block { id: string; height: number; version: number; timestamp: number; tx_count: number; size: number; weight: number; merkle_root: string; previousblockhash: string; mediantime: number; nonce: number; bits: number; difficulty: number; } export interface BlockStatus { in_best_chain: boolean; height: number; next_best: string; } export interface BlockInstance { getBlock: (params: { hash: string }) => Promise; getBlocks: (params: { start_height?: number }) => Promise; getBlockStatus: (params: { hash: string }) => Promise; getBlockTxs: (params: { hash: string; start_index?: number }) => Promise; getBlockTxids: (params: { hash: string }) => Promise; getBlockTxid: (params: { hash: string; index: number }) => Promise; getBlockRaw: (params: { hash: string }) => Promise; getBlockHeight: (params: { height: number }) => Promise; getBlocksTipHeight: () => Promise; getBlocksTipHash: () => Promise; }