bb-inspired
Version:
Core library for BB-inspired NestJS backend
19 lines (18 loc) • 812 B
TypeScript
import { OnModuleInit, OnModuleDestroy } from '@nestjs/common';
import { Db, Collection, ClientSession } from 'mongodb';
import { DatabaseConnectionOptions } from '../../interfaces/database.interfaces';
export declare class MongodbService implements OnModuleInit, OnModuleDestroy {
private options;
private readonly logger;
private client;
private db;
private collections;
constructor(options: DatabaseConnectionOptions);
onModuleInit(): Promise<void>;
onModuleDestroy(): Promise<void>;
getDatabase(): Db;
getCollection<T = any>(name: string): Collection<T>;
startSession(): Promise<ClientSession>;
executeInTransaction<T>(operations: (session: ClientSession) => Promise<T>): Promise<T>;
createIndexes(collectionName: string, indexes: any[]): Promise<void>;
}