/** * Sync Daemon for Background Realtime Sync (TRL-334) * * Background process that maintains persistent WebSocket connection * and auto-syncs full graph state between environments. */ import type { VcsOp } from '../vcs/types.js'; export interface SyncDaemonOptions { /** WebSocket server URL. */ url: string; /** Local peer ID. */ localPeerId: string; /** Function to get local ops. */ getLocalOps: () => VcsOp[]; /** Function to apply received ops. */ onOpsReceived: (ops: VcsOp[]) => void | Promise; /** Sync interval in ms (default: 1000). */ syncInterval?: number; } export interface SyncDaemonState { running: boolean; connected: boolean; lastSyncTime?: string; syncCount: number; quarantineCount: number; } /** * Background sync daemon. * Maintains WebSocket connection and auto-syncs on interval. */ export declare class SyncDaemon { private options; private engine; private transport; private quarantine; private interval; private state; constructor(opts: SyncDaemonOptions); /** * Start the sync daemon. */ start(): Promise; /** * Stop the sync daemon. */ stop(): void; /** * Get current daemon state. */ getState(): SyncDaemonState; /** * Get quarantine entries. */ getQuarantine(): import("../vcs/sync-policy.js").QuarantineEntry[]; /** * Apply a quarantined message. */ applyQuarantine(id: string): Promise; /** * Reject a quarantined message. */ rejectQuarantine(id: string): void; } //# sourceMappingURL=sync-daemon.d.ts.map