import { TransactionObject, TransactionRequest } from "../db/Transaction"; import { IDb } from "./container/IDb"; export declare class JournalDb { private db; private protectedCsn; constructor(db: IDb); getProtectedCsn(): number; setProtectedCsn(protectedCsn: number): void; start(): Promise; checkConsistent(postulatedCsn: number, request: TransactionRequest): Promise; getLastDigest(): Promise; getLastJournal(): Promise; static serializeTrans(transaction: TransactionObject): object; static deserializeTrans(obj: any): TransactionObject; insert(transaction: TransactionObject, session?: any): Promise; findByCsn(csn: number, session?: any): Promise; findByCsnRange(from: number, to: number, projection?: object, session?: any): Promise; deleteAfterCsn(csn: number, session?: any): Promise; deleteBeforeCsn(csn: number): Promise; deleteAll(session?: any): Promise; replace(oldTransaction: TransactionObject, newTransaction: TransactionObject, session?: any): Promise; getBeforeCheckPointTime(time: Date): Promise; getOneAfterCsn(csn: number): Promise; }