import type { DiagnosticsSink } from '../core/sdk-diagnostics.js'; import type { SDKMirrorErrorMessage } from '../types/messages.js'; import type { SessionKey, SessionStore, SessionStoreEntry, SessionStoreFlush } from './session-store.js'; export type TranscriptMirrorMessage = { type: 'transcript_mirror'; filePath: string; entries: SessionStoreEntry[]; }; export declare function isTranscriptMirrorMessage(value: unknown): value is TranscriptMirrorMessage; export declare class TranscriptMirrorBatcher { private readonly options; private readonly states; constructor(options: { store: SessionStore; flushMode: SessionStoreFlush; onMirrorError: (message: SDKMirrorErrorMessage) => void; diagnostics?: DiagnosticsSink; appendTimeoutMs?: number; retryDelaysMs?: readonly number[]; }); enqueue(message: TranscriptMirrorMessage): void; flush(): Promise; private drain; } export declare function sessionKeyFromTranscriptPath(filePath: string): SessionKey;