import { type EmailData } from "./graph.js"; export interface DispatchResult { threadsDispatched: number; threadsSkipped: number; unresolvedAddresses: string[]; attachmentsAttached: number; attachmentsFailed: number; } /** * Per-message attachment record produced by email-ingest after it fetched * bytes from IMAP and archived them to disk. The dispatcher uses these to * MERGE :DigitalDocument nodes and tag them with the thread's pending * conversation identity so memory-ingest can wire :HAS_ENCLOSURE edges * when it later writes the parent :ConversationArchive. */ export interface AttachmentArchiveRecord { uid: number; partKey: string; filename: string; mimeType: string; sizeBytes: number; /** sha256(bytes) when bytes were fetched; synthetic id when not. */ attachmentId: string; /** Absolute on-disk path of archived bytes, or null when not archived. */ archivePath: string | null; /** True iff bytes were fetched and written to disk. */ archived: boolean; } export declare function dispatchEmailMessagesToConversationArchive(messages: EmailData[], attachmentRecords?: AttachmentArchiveRecord[]): Promise; //# sourceMappingURL=conversation-archive-dispatch.d.ts.map