import type { RxCollection, ReplicationPullOptions, ReplicationPushOptions, RxDocumentData } from '../../types/index.d.ts'; import { RxReplicationState } from '../replication/index.ts'; import type { MongoDbCheckpointType, SyncOptionsMongoDB } from './mongodb-types.ts'; import { Db as MongoDatabase, Collection as MongoCollection, MongoClient } from 'mongodb'; export * from './mongodb-helper.ts'; export * from './mongodb-checkpoint.ts'; export type * from './mongodb-types.ts'; export declare class RxMongoDBReplicationState extends RxReplicationState { readonly mongoClient: MongoClient; readonly mongoDatabase: MongoDatabase; readonly mongoCollection: MongoCollection | any>; readonly options: SyncOptionsMongoDB; readonly replicationIdentifier: string; readonly collection: RxCollection; readonly pull?: ReplicationPullOptions | undefined; readonly push?: ReplicationPushOptions | undefined; readonly live: boolean; retryTime: number; autoStart: boolean; constructor(mongoClient: MongoClient, mongoDatabase: MongoDatabase, mongoCollection: MongoCollection | any>, options: SyncOptionsMongoDB, replicationIdentifier: string, collection: RxCollection, pull?: ReplicationPullOptions | undefined, push?: ReplicationPushOptions | undefined, live?: boolean, retryTime?: number, autoStart?: boolean); } export declare function replicateMongoDB(options: SyncOptionsMongoDB): RxMongoDBReplicationState;