import { type StateMode } from './paths'; export type StateStore = { root: string; repoId: string; runsDir: string; auditDir: string; cacheDir: string; conversationsDir: string; artifactsDir: string; tasksDir: string; queueDir: string; stateVersion: string; lockRelease: () => Promise; writeRunState: (runId: string, data: RunStateData) => Promise; readRunState: (runId: string) => Promise; updateRunState: (runId: string, updater: (data: RunStateData) => RunStateData) => Promise; }; export type RunStateData = Record; export type RunStateEnvelope = { version: string; runId: string; data: RunStateData; }; export type StateStoreOptions = { lock?: boolean; mode?: StateMode; root?: string; metadataRepoRoot?: string; }; export type StateMetadata = { notifiedAt?: string; repoRoot?: string; repoLabel?: string; lastAccessedAt?: string; }; export declare function initStateStore(repoRoot: string, options?: StateStoreOptions): Promise; export declare function readStateMetadata(path: string): Promise; export declare function updateRepoMetadata(options: { metadataPath: string; repoRoot: string; repoLabel?: string; }): Promise;