/** * StrictDB MongoDB Adapter * * Wraps core/db/mongo.ts — the existing production-tested MongoDB wrapper. * Filter syntax IS MongoDB's native syntax — no translation needed. */ import type { DatabaseAdapter } from './adapter.js'; import type { Backend, ConfirmOptions, ConnectionStatus, Driver, LookupOptions, NativeBulkWriteOp, OperationReceipt, QueryOptions, StrictDBConfig, StrictFilter, UpdateOperators } from '../types.js'; import type { StrictDBEventEmitter } from '../events.js'; export declare class MongoAdapter implements DatabaseAdapter { readonly backend: Backend; readonly driver: Driver; private config; private emitter; private reconnectManager; private connectedAt; constructor(config: StrictDBConfig, emitter: StrictDBEventEmitter); connect(): Promise; close(): Promise; status(): ConnectionStatus; queryOne, TDoc = Record>(collection: string, filter: StrictFilter, options?: QueryOptions): Promise; queryMany, TDoc = Record>(collection: string, filter: StrictFilter, options?: QueryOptions): Promise; queryWithLookup(collection: string, options: LookupOptions): Promise; count(collection: string, filter?: StrictFilter): Promise; insertOne(collection: string, doc: T): Promise; insertMany(collection: string, docs: T[]): Promise; updateOne, TDoc = Record>(collection: string, filter: StrictFilter, update: UpdateOperators, upsert?: boolean): Promise; updateMany, TDoc = Record>(collection: string, filter: StrictFilter, update: UpdateOperators): Promise; deleteOne(collection: string, filter: StrictFilter, _options?: ConfirmOptions): Promise; deleteMany(collection: string, filter: StrictFilter, _options?: ConfirmOptions): Promise; aggregate(collection: string, pipeline: Record[], options?: { allowDiskUse?: boolean; }): Promise; nativeBulkWrite(collection: string, operations: NativeBulkWriteOp[]): Promise<{ insertedCount: number; modifiedCount: number; deletedCount: number; insertedIds?: string[]; upsertedIds?: string[]; }>; withTransaction(fn: (txAdapter: DatabaseAdapter) => Promise): Promise; ensureIndexes(indexes: Array<{ collection: string; fields: Record; unique?: boolean; sparse?: boolean; expireAfterSeconds?: number; }>): Promise; raw(): unknown; } //# sourceMappingURL=mongo-adapter.d.ts.map