import { OnApplicationShutdown } from '@nestjs/common'; import { Sequelize } from 'sequelize'; import { NodeConfig } from '../configure/NodeConfig'; import { SubqueryProject } from '../configure/project.model'; import { ProofOfIndex } from './entities/Poi.entity'; export declare class MmrService implements OnApplicationShutdown { protected nodeConfig: NodeConfig; protected project: SubqueryProject; protected sequelize: Sequelize; private isShutdown; private blockOffset; private metadataRepo; private fileBasedMmr; private poiRepo; private nextMmrHeight; constructor(nodeConfig: NodeConfig, project: SubqueryProject, sequelize: Sequelize); onApplicationShutdown(): void; init(schema: string): Promise; fetchBlockOffsetFromDb(): Promise; appendMmrNode(poiBlock: ProofOfIndex): Promise; updatePoiMmrRoot(id: number, mmrValue: Uint8Array): Promise; syncFileBaseFromPoi(): Promise; getPoiBlocksByRange(startHeight: number): Promise; ensureFileBasedMmr(projectMmrPath: string): void; }