adonis-odm
Version:
A comprehensive MongoDB ODM for AdonisJS with Lucid-style API, type-safe relationships, embedded documents, and transaction support
24 lines • 1.23 kB
TypeScript
import { Collection, Document, ClientSession } from 'mongodb';
import { BaseModel } from './base_model/base_model.js';
import { ModelQueryBuilder } from './query_builder/model_query_builder.js';
import { ModelConstructor } from './types/index.js';
import type { MongoDatabaseManager } from './database_manager.js';
export interface MongoTransactionClient {
commit(): Promise<void>;
rollback(): Promise<void>;
collection<T extends Document = Document>(name: string): Collection<T>;
query<T extends BaseModel = BaseModel>(modelConstructor: ModelConstructor): ModelQueryBuilder<Document, T>;
getSession(): ClientSession;
}
export declare class ConcreteMongoTransactionClient implements MongoTransactionClient {
private session;
private manager;
private connectionName;
constructor(session: ClientSession, manager: MongoDatabaseManager, connectionName: string);
commit(): Promise<void>;
rollback(): Promise<void>;
collection<T extends Document = Document>(name: string): Collection<T>;
query<T extends BaseModel = BaseModel>(modelConstructor: ModelConstructor): ModelQueryBuilder<Document, T>;
getSession(): ClientSession;
}
//# sourceMappingURL=transaction_client.d.ts.map