@gear-js/api
Version:
A JavaScript library that provides functionality to connect GEAR Component APIs.
78 lines (77 loc) • 2.75 kB
TypeScript
import { AnyNumber, AnyTuple } from '@polkadot/types/types';
import { BlockHash, BlockNumber, Header, SignedBlock } from '@polkadot/types/interfaces';
import { Compact, GenericExtrinsic, u64, Vec } from '@polkadot/types';
import { FrameSystemEventRecord } from '@polkadot/types/lookup';
import { HeaderExtended } from '@polkadot/api-derive/types';
import { HexString } from '@polkadot/util/types';
import { Observable } from 'rxjs';
import { PromiseResult } from '@polkadot/api/types';
import { GearApi } from '../GearApi';
export declare class GearBlock {
private api;
subscribeNewHeads: PromiseResult<() => Observable<HeaderExtended>>;
constructor(api: GearApi);
/**
* Get data of particular block by blockHash
* @param hash
* @returns
*/
get(hash: HexString | Uint8Array): Promise<SignedBlock>;
/**
* Get data of particular block by blockNumber
* @param number
* @returns
*/
get(number: number): Promise<SignedBlock>;
/**
* Get data of particular block by blockNumber or blockHash
* @param hashOrNumber
* @returns
*/
get(hashOrNumber: string | Uint8Array | number): Promise<SignedBlock>;
/**
* Get blockHash by number
* @param number number of block
* @returns blockHash
*/
getBlockHash(number: AnyNumber | BlockNumber): Promise<BlockHash>;
/**
* Get block number
* @param hash
* @returns Compact<BlockNumber>
*/
getBlockNumber(hash: string | Uint8Array): Promise<Compact<BlockNumber>>;
/**
* ### Get block's timestamp
* @param block
*/
getBlockTimestamp(block: SignedBlock): Promise<Compact<u64>>;
/**
* ### Get block's timestamp by blockHash
* @param hash
*/
getBlockTimestamp(hash: HexString | Uint8Array): Promise<Compact<u64>>;
/**
* ### Get block's timestamp by blockNumber
* @param number
*/
getBlockTimestamp(number: number): Promise<Compact<u64>>;
/**
* Get all extrinsic of particular block
* @param blockHash hash of particular block
* @returns Vec of extrinsics
*/
getExtrinsics(blockHash: `0x${string}` | Uint8Array): Promise<Vec<GenericExtrinsic<AnyTuple>>>;
/**
* Get all events of particular block
* @param blockHash hash of particular block
* @returns Vec of events
*/
getEvents(blockHash: `0x${string}` | Uint8Array): Promise<Vec<FrameSystemEventRecord>>;
/**
* Get hash of last finalized block
* @returns Hash of finalized head
*/
getFinalizedHead(): Promise<BlockHash>;
subscribeToHeadsFrom(from: number | HexString, cb: (header: Header) => Promise<void> | void, blocks?: 'finalized' | 'latest'): Promise<() => void>;
}