import type { Document, MongoClient } from 'mongodb'; import { AbstractQuerier } from 'nukak/querier'; import type { ExtraOptions, IdValue, Query, QueryConflictPaths, QueryOptions, QuerySearch, Type } from 'nukak/type'; import type { MongoDialect } from './mongoDialect.js'; export declare class MongodbQuerier extends AbstractQuerier { readonly dialect: MongoDialect; readonly conn: MongoClient; readonly extra?: ExtraOptions; private session; constructor(dialect: MongoDialect, conn: MongoClient, extra?: ExtraOptions); private execute; findMany(entity: Type, q: Query): Promise; count(entity: Type, qm?: QuerySearch): Promise; insertMany(entity: Type, payloads: E[]): Promise[]>; updateMany(entity: Type, qm: QuerySearch, payload: E): Promise; upsertOne(entity: Type, conflictPaths: QueryConflictPaths, payload: E): Promise<{ firstId: string; changes: number; }>; deleteMany(entity: Type, qm: QuerySearch, opts?: QueryOptions): Promise; get hasOpenTransaction(): boolean; collection(entity: Type): import("mongodb").Collection; get db(): import("mongodb").Db; beginTransaction(): Promise; commitTransaction(): Promise; rollbackTransaction(): Promise; internalRelease(): Promise; }