/** * Sync routes — status, peers, actors, attempts, pairing, mutations. */ import type { MemoryStore } from "@codemem/core"; import { Hono } from "hono"; import type { InMemoryRequestRateLimiter } from "../request-rate-limit.js"; type StoreFactory = () => MemoryStore; type SyncRuntimeStatus = { phase: "starting" | "running" | "stopping" | "error" | "disabled" | "rebootstrapping" | "needs_attention" | null; detail?: string | null; }; interface SyncProtocolRouteOptions { routeRateLimit?: { limiter: InMemoryRequestRateLimiter; readLimit: number; mutationLimit: number; unauthenticatedReadLimit: number; unauthenticatedMutationLimit: number; }; } /** * Peer-to-peer sync protocol routes (/v1/*). * * These are mounted on the sync listener (0.0.0.0:7337) and are * network-accessible. All requests are auth-gated via signature * verification so unauthenticated callers are rejected. */ export declare function syncProtocolRoutes(getStore: StoreFactory, opts?: SyncProtocolRouteOptions): Hono; /** * Viewer-facing sync management routes (/api/sync/*). * * These are mounted on the viewer listener (127.0.0.1:38888) and * provide sync status, peer management, and coordinator UI for the * local viewer. */ export declare function syncRoutes(getStore: StoreFactory, getSyncRuntimeStatus?: () => SyncRuntimeStatus | null): Hono; export {}; //# sourceMappingURL=sync.d.ts.map