import type { DurableJournal } from "@claudexor/journal"; import { type JobRecord } from "./server.js"; /** Journal-backed authority for daemon commands. A returned mutation is fsynced. */ export declare class CommandStore { private readonly journal; private readonly now; private readonly recordsById; private readonly idByKeyDigest; private readonly prunedRoots; constructor(journal: DurableJournal, now?: () => Date); /** Apply crash terminalization only after bootstrap has proved every required partition. */ recoverAfterStartup(): void; accept(input: { id: string; params: unknown; idempotencyKey: string; clientId: string; operation?: string; idempotencyParams?: unknown; }): { record: JobRecord; reused: boolean; }; find(input: { params: unknown; idempotencyKey: string; clientId: string; operation?: string; idempotencyParams?: unknown; }): JobRecord | null; get(id: string): JobRecord | undefined; records(): JobRecord[]; update(id: string, patch: Partial): JobRecord; prune(ids: readonly string[]): void; /** Project roots of commands this store pruned, across restarts and folds. */ prunedScopeRoots(): string[]; /** * Reconcile one command after the partition journal accepted its terminal * but local receipt/tail finalization failed. */ recoverDurableTerminal(id: string): JobRecord | null; validateProjection(): void; private replay; private interruptUnknownCommands; private reconcileTerminal; /** The partition's durable terminals, from the pass shared with the * RunEventStore projection (parsed once per generation, extended on append). */ private durableTerminalEvents; private recoverTerminalArtifacts; private drop; } export declare function commandProjection(): { name: string; create: (journal: DurableJournal) => CommandStore; validate: (store: CommandStore) => void; recover: (store: CommandStore) => void; }; //# sourceMappingURL=command-store.d.ts.map