export interface ChunkAttribution { fileId: string; fileName: string; } export interface ChunkAttributionStore { /** * Record attribution for a chunk under a specific vector store. Later * `lookup(vectorStoreId, chunkId)` calls will return this attribution so * `searchResultsToOpenAI` can map RAG chunks back to the original upload's * `file_id` and `filename`. */ record: (vectorStoreId: string, chunkId: string, attribution: ChunkAttribution) => void; /** Look up attribution. Returns null when the chunk has no recorded source (eg. ingested before the current process). */ lookup: (vectorStoreId: string, chunkId: string) => ChunkAttribution | null; /** Drop all attributions for a vector store; called on DELETE so the map cannot leak across the store's lifetime. */ evict: (vectorStoreId: string) => void; } export declare function createChunkAttributionStore(): ChunkAttributionStore; //# sourceMappingURL=chunk-attribution-store.d.ts.map