export type PersistedSemanticResolutionState = 'provisional' | 'resolved' | 'abstained' | 'unavailable'; export type PersistedSemanticGeneratedBy = 'deterministic' | 'embedding_router' | 'host_semantic' | 'hybrid'; export interface SemanticResolutionRecord { frameHash: string; projectRoot: string; projectId: string; hostId: string; sessionId: string; turnId: string; requestId: string; sourceHash: string; artifactHash: string; artifactRevision: number; supersedesFrameHash?: string; state: PersistedSemanticResolutionState; generatedBy: PersistedSemanticGeneratedBy; modelId?: string; modelRevision?: string; routeCatalogVersion: string; thresholdVersion: string; route: Record; sampling: Record; conflicts: Array>; frame: Record; durationMs: number; createdAt: number; } export declare function assertSemanticResolutionRecord(record: SemanticResolutionRecord): void; export declare function stableSemanticResolutionJson(value: unknown): string; export declare function mapSemanticResolutionRow(row: Record): SemanticResolutionRecord;