/**
 * Trellis Federation — Remote Manager
 *
 * Handles remote workspace configuration and pull operations.
 * Implements read-only mirroring with watermark-based incremental sync.
 */
import { TrellisVcsEngine } from '../engine.js';
import type { RemoteConfig, RemotesConfig, PullResult, PullAllResult } from './types.js';
export declare class RemoteManager {
    private trellisPath;
    private remotesPath;
    constructor(trellisPath: string);
    /** Load remotes configuration */
    loadRemotes(): RemotesConfig;
    /** Save remotes configuration */
    saveRemotes(config: RemotesConfig): void;
    /** Add a new remote */
    addRemote(name: string, path: string): void;
    /** Remove a remote */
    removeRemote(name: string): void;
    /** List all remotes */
    listRemotes(): RemoteConfig[];
    /** Pull new ops from a specific remote */
    pullRemote(remoteName: string, localEngine: TrellisVcsEngine): Promise<PullResult>;
    /** Pull from all configured remotes */
    pullAll(localEngine: TrellisVcsEngine): Promise<PullAllResult>;
    /** Prefix entity IDs in operations with remote name */
    private prefixOpEntities;
}
//# sourceMappingURL=remote-manager.d.ts.map