import { IindexEntry, IndexEntry, MindexEntry, SimpleSindexEntryForWallet, SimpleUdEntryForWallet } from "../indexer"; import { ConfDTO } from "../dto/ConfDTO"; import { BlockDTO } from "../dto/BlockDTO"; import { DBHead } from "../db/DBHead"; import { DBBlock } from "../db/DBBlock"; import { FileDAL } from "../dal/fileDAL"; import { Wot } from "../../../neon/lib"; export declare class DuniterBlockchain { static checkBlock(block: BlockDTO, withPoWAndSignature: boolean, ignoreIssuer: boolean, conf: ConfDTO, dal: FileDAL): Promise<{ index: IndexEntry[]; HEAD: DBHead; }>; static pushTheBlock(obj: BlockDTO, index: IndexEntry[], HEAD: DBHead | null, conf: ConfDTO, dal: FileDAL, logger: any, trim?: boolean): Promise; static saveBlockData(current: DBBlock | null, block: BlockDTO, conf: ConfDTO, dal: FileDAL, logger: any, index: IndexEntry[], HEAD: DBHead | null, trim: boolean): Promise; static saveParametersForRoot(block: BlockDTO, conf: ConfDTO, dal: FileDAL): Promise; static createNewcomers(iindex: IindexEntry[], dal: FileDAL, logger: any, instance?: Wot): Promise; static updateMembers(block: BlockDTO, dal: FileDAL, instance?: Wot): Promise; static updateWallets(sindex: SimpleSindexEntryForWallet[], dividends: SimpleUdEntryForWallet[], aDal: any, reverse?: boolean, at?: number): Promise; static revertBlock(number: number, hash: string, dal: FileDAL, block?: DBBlock): Promise; static undoMembersUpdate(blockstamp: string, dal: FileDAL): Promise; static undoDeleteTransactions(block: DBBlock, dal: FileDAL): Promise; /** * Delete certifications from the sandbox since it has been written. * * @param block Block in which are contained the certifications to remove from sandbox. * @param dal The DAL */ static removeCertificationsFromSandbox(block: BlockDTO, dal: FileDAL): Promise; /** * Delete memberships from the sandbox since it has been written. * * @param block Block in which are contained the certifications to remove from sandbox. * @param dal The DAL */ static removeMembershipsFromSandbox(block: BlockDTO, dal: FileDAL): Promise; static computeToBeRevoked(mindex: MindexEntry[], dal: FileDAL): Promise; static deleteTransactions(block: BlockDTO, dal: FileDAL): Promise; static updateBlocksComputedVars(current: { unitbase: number; monetaryMass: number; } | null, block: { number: number; unitbase: number; dividend: number | null; membersCount: number; monetaryMass: number; }): void; static pushSideBlock(obj: BlockDTO, dal: FileDAL, logger: any): Promise; static trimIndexes(dal: FileDAL, HEAD: { number: number; }, conf: ConfDTO): Promise; } export declare function requiredBindexSizeForTail(TAIL: { issuersCount: number; issuersFrame: number; }, conf: { medianTimeBlocks: number; dtDiffEval: number; forksize: number; }): number;