import { Identity } from "./"; export interface BlocksQuery { from?: number; size?: number; shard?: number; proposer?: string; validator?: string; epoch?: number; nonce?: number; hashes?: string | string[]; withProposerIdentity?: boolean; } export interface Block { hash: string; epoch: number; nonce: number; prevHash: string; proposer: string; proposerIdentity: Identity | null; pubKeyBitmap: string; round: number; shard: number; size: number; sizeTxs: number; stateRootHash: string; timestamp: number; txCount: number; gasConsumed: number; gasRefunded: number; gasPenalized: number; maxGasLimit: number; scheduledRootHash: string | null; } export interface BlocksCountQuery { shard?: number; proposer?: string; validator?: string; epoch?: number; nonce?: number; } export interface BlockDetailed { hash: string; epoch: number; nonce: number; prevHash: string; proposer: string; proposerIdentity: Identity | null; pubKeyBitmap: string; round: number; shard: number; size: number; sizeTxs: number; stateRootHash: string; timestamp: number; txCount: number; gasConsumed: number; gasRefunded: number; gasPenalized: number; maxGasLimit: number; scheduledRootHash: string | null; miniBlocksHashes: string[]; notarizedBlocksHashes: string[]; validators: string[]; } export interface BlockLatestQuery { ttl?: number; }