import type { EmittedTurn } from '../spans/emit.js'; export type EmitSource = 'plugin' | 'collect'; export interface EmittedTurnRecord { trace_id: string; emitted_at: string; source: EmitSource; } export interface CollectWatermark { updated_at: number; collected_at: string; } export interface CollectState { version: 1; emitted_turns: Record; watermarks: Record; } export declare function loadCollectState(): Promise; export declare function turnStateKey(project: string, dbPath: string, conversationId: string, turnId: string): string; export declare function watermarkStateKey(project: string, dbPath: string, cwd: string): string; export declare function emittedRecord(state: CollectState, project: string, dbPath: string, conversationId: string, turnId: string): EmittedTurnRecord | undefined; export declare function markEmittedTurns(project: string, dbPath: string, source: EmitSource, emittedTurns: EmittedTurn[]): Promise; export declare function readCollectWatermark(project: string, dbPath: string, cwd: string): Promise; export declare function writeCollectWatermark(project: string, dbPath: string, cwd: string, updatedAt: number): Promise;