import { ClientSession } from "mongodb"; import { IDb } from "./IDb"; export declare class PersistentDb implements IDb { private static connection; private static lock; private db; private database; private subsetName; private collection; private indexMap; private logger; static convertQuery(query: any): object; private static getConnection; private static errorExit; static getAllStorage(): Promise; static deleteStorage(name: string): Promise; constructor(database: string); startTransaction(): Promise; commitTransaction(session?: ClientSession): Promise; abortTransaction(session?: ClientSession): Promise; setCollection(collection: string): void; setIndexes(indexMap: { [name: string]: { index: object; property?: object; }; }): void; start(): Promise; findOne(query: object, session?: ClientSession): Promise; findByRange(field: string, from: any, to: any, dir: number, projection?: object, session?: ClientSession): Promise; findOneBySort(query: object, sort: object): Promise; find(query: object, sort?: object, limit?: number, offset?: number, projection?: object, session?: ClientSession, throwErrorMode?: boolean): Promise; count(query: object, throwErrorMode?: boolean): Promise; insertOne(doc: object, session?: ClientSession, throwErrorMode?: boolean): Promise; insertMany(docs: object[], session?: ClientSession): Promise; increment(id: string, field: string): Promise; updateOneById(id: string, update: object, session?: ClientSession): Promise; updateOne(filter: object, update: object, session?: ClientSession): Promise; replaceOneById(id: string, doc: object, session?: ClientSession, throwErrorMode?: boolean): Promise; deleteOneById(id: string, session?: ClientSession, throwErrorMode?: boolean): Promise; deleteByRange(field: string, from: any, to: any, session?: ClientSession): Promise; deleteAll(session?: ClientSession, throwErrorMode?: boolean): Promise; private createIndexes; }