/// import { Transform } from 'stream'; import Source from './source'; import { ReplicationChainBuilder, ReplicationChainBuilderCallback } from './replicationChainBuilder'; import Target from './target'; /** * Replicates data from source to target(s) */ export default class Replicator { private readonly _defaultSource; private readonly _defaultSourceParams; /** * @constructor * @param source Source to replicate * @param sourceParams Source parameters */ constructor(source?: Source, sourceParams?: Object); /** * Adds specified target to replication chain * * @param target Replication target * @param targetParams Target parameters * @returns Replication chain builder instance */ to(target: Target, targetParams: any): ReplicationChainBuilder; /** * Adds specified transform to replication chain * * @param transform Transform * @param builder Builder function * @returns Replication chain builder instance */ via(transform: Transform, builder?: ReplicationChainBuilderCallback): ReplicationChainBuilder; }