import { ApiPromise } from '@polkadot/api'; import { Vec } from '@polkadot/types'; import '@polkadot/api-augment/substrate'; import { BlockHash, EventRecord, RuntimeVersion, SignedBlock, Header as SubstrateHeader } from '@polkadot/types/interfaces'; import { BN } from '@polkadot/util'; import { IBlock, Header } from '@subql/node-core'; import { SubstrateBlockFilter, SubstrateCallFilter, SubstrateEventFilter, SubstrateBlock, SubstrateEvent, SubstrateExtrinsic } from '@subql/types'; import { BlockContent, LightBlockContent } from '../indexer/types'; type MissTsHeader = Omit; export declare function substrateHeaderToHeader(header: SubstrateHeader): MissTsHeader; export declare function substrateBlockToHeader(block: SignedBlock): Header; export declare function wrapBlock(signedBlock: SignedBlock, events: EventRecord[], specVersion: number): SubstrateBlock; export declare function getTimestamp({ block: { extrinsics }, }: SignedBlock): Date | undefined; export declare function getHeaderForHash(api: ApiPromise, blockHash: string): Promise
; export declare function wrapExtrinsics(wrappedBlock: SubstrateBlock, allEvents: EventRecord[]): SubstrateExtrinsic[]; export declare function wrapEvents(extrinsics: SubstrateExtrinsic[], events: EventRecord[], block: SubstrateBlock): SubstrateEvent[]; export declare function filterBlock(block: SubstrateBlock, filter?: SubstrateBlockFilter): SubstrateBlock | undefined; export declare function filterBlockModulo(block: SubstrateBlock, filter: SubstrateBlockFilter): boolean; export declare function filterExtrinsic({ block, extrinsic, success }: SubstrateExtrinsic, filter?: SubstrateCallFilter): boolean; export declare function filterExtrinsics(extrinsics: SubstrateExtrinsic[], filterOrFilters: SubstrateCallFilter | SubstrateCallFilter[] | undefined): SubstrateExtrinsic[]; export declare function filterEvent({ block, event }: SubstrateEvent, filter?: SubstrateEventFilter): boolean; export declare function filterEvents(events: SubstrateEvent[], filterOrFilters?: SubstrateEventFilter | SubstrateEventFilter[]): SubstrateEvent[]; export declare function prefetchMetadata(api: ApiPromise, hash: BlockHash): Promise; /** * * @param api * @param startHeight * @param endHeight * @param overallSpecVer exists if all blocks in the range have same parant specVersion */ export declare function getBlockByHeight(api: ApiPromise, height: number): Promise; export declare function getHeaderByHeight(api: ApiPromise, height: number): Promise; export declare function fetchBlocksArray(api: ApiPromise, blockArray: number[]): Promise; export declare function fetchHeaderArray(api: ApiPromise, blockArray: number[]): Promise; export declare function fetchEventsRange(api: ApiPromise, hashs: BlockHash[]): Promise[]>; export declare function fetchRuntimeVersionRange(api: ApiPromise, hashs: BlockHash[]): Promise; export declare function fetchBlocksBatches(api: ApiPromise, blockArray: number[], overallSpecVer?: number): Promise[]>; export declare function fetchLightBlock(api: ApiPromise, height: number): Promise>; export declare function fetchBlocksBatchesLight(api: ApiPromise, blockArray: number[]): Promise[]>; export declare function calcInterval(api: ApiPromise): BN; export {};