import { AxioDBCloud } from './AxioDBCloud.client'; import PooledConnection from './PooledConnection'; /** * TransactionProxy - client-side transactional API over TCP. * * All operations are pinned to the same underlying TCP connection so that * in-flight writes are visible to subsequent reads within the same transaction. * Created via `collection.beginTransaction()`. */ export default class TransactionProxy { private client; private transactionId; private dbName; private collectionName; private pinnedConnection; constructor(client: AxioDBCloud, transactionId: string, dbName: string, collectionName: string, pinnedConnection: PooledConnection); get id(): string; private params; insert(data: object): Promise; insertMany(documents: object[]): Promise; findByIds(ids: string[]): Promise; query(query: object, options?: { limit?: number; skip?: number; sort?: Record; findOne?: boolean; }): Promise; updateById(documentId: string, updateData: object): Promise; updateByQuery(query: object, updateData: object, updateOne?: boolean): Promise; deleteById(documentId: string): Promise; deleteByQuery(query: object, deleteOne?: boolean): Promise; commit(): Promise; rollback(): Promise; savepoint(name: string): Promise; rollbackToSavepoint(name: string): Promise; releaseSavepoint(name: string): Promise; }