import type { EmbedderInterface } from '../chunker/semantic-chunker.js'; import type { EmbeddingComputationIdentity, EmbeddingRole } from './index.js'; export declare const MAX_EMBEDDING_SNAPSHOT_BYTES: number; export interface PersistentEmbeddingProvider extends EmbedderInterface { embedBatch(texts: string[], role?: EmbeddingRole): Promise; getComputationIdentity(): Promise; } /** Exact indexed path identity is shared by CLI and MCP for the same DB key. */ export declare function embeddingSnapshotPath(dbPath: string, filePath: string): string; /** Best-effort cleanup: a missing or inaccessible acceleration file is harmless. */ export declare function removeEmbeddingSnapshot(dbPath: string, filePath: string): Promise; /** * One ingestion's read/collect/publish state. It owns no shared Embedder state * and is discarded by the composition root after that file's DB mutation. */ export declare class DocumentEmbeddingSession implements EmbedderInterface { private readonly snapshotPath; private readonly embedder; private identity; private loaded; private collecting; private disposed; private collectedBytes; private readonly previous; private readonly collected; constructor(dbPath: string, filePath: string, embedder: PersistentEmbeddingProvider); get titlePrefix(): boolean; get headingPrefix(): boolean; getTokenLimit(): Promise; countTokens(texts: string[], role?: 'document'): Promise; getDocumentPrompt(): Promise; embedBatch(texts: string[], role?: EmbeddingRole): Promise; private embedWithPrevious; private collectPreviousInputs; private inferMissingWithIdentity; private completeResults; private discardUntrustedVectors; /** Publish only after the adapter's per-file insertion has succeeded. */ publish(): Promise; private resolvePublicationIdentity; private writeSnapshot; /** Drop all per-document vectors on success, failure, or zero-chunk return. */ dispose(): void; private loadPrevious; private loadPreviousIfPresent; private embedAndCollectWithoutPrevious; private collectCurrentInputs; private inferWithoutPrevious; private remember; private stopCollecting; } //# sourceMappingURL=embedding-snapshot.d.ts.map