import { type ResourceIdentifier } from '@solid/community-server'; import type { LocalRdfIndexAccessor } from '../storage/accessors/MixDataAccessor'; import type { RdfTextIndexLike, RdfVectorChunkInput, RdfVectorIndexLike, RdfVectorSourceInput } from '../storage/rdf'; import type { SolidFsChange, SolidFsManifest, SolidFsSyncer } from './types'; type MaybePromise = T | Promise; export interface RdfIndexSolidFsSyncerOptions { index: LocalRdfIndexAccessor; textIndex?: RdfTextIndexLike; vectorIndex?: RdfVectorIndexLike; vectorizeText?: (input: RdfIndexSolidFsVectorizeInput) => MaybePromise; resolveIdentifier?: (change: SolidFsChange, workspace: SolidFsManifest) => ResourceIdentifier | undefined; } export interface RdfIndexSolidFsVectorizeInput extends RdfVectorSourceInput { text: string; } export interface RdfIndexSolidFsRebuildOptions { dryRun?: boolean; resetDerivedIndexes?: boolean; } export interface RdfIndexSolidFsRebuildResult { scanned: number; indexedRdfDocuments: number; indexedTextSources: number; upToDateTextSources: number; indexedVectorSources: number; failed: number; errors: RdfIndexSolidFsRebuildError[]; skipped: number; dryRun: boolean; resetDerivedIndexes: boolean; } export interface RdfIndexSolidFsRebuildError { path: string; source?: string; message: string; } /** * Refreshes the structured RDF index for standard RDF documents changed * through a SolidFS materialized workspace. */ export declare class RdfIndexSolidFsSyncer implements SolidFsSyncer { private readonly index; private readonly textIndex?; private readonly vectorIndex?; private readonly vectorizeText?; private readonly resolveIdentifier; constructor(options: RdfIndexSolidFsSyncerOptions); shouldTrackPath(relativePath: string): boolean; rebuildWorkspace(workspace: SolidFsManifest, options?: RdfIndexSolidFsRebuildOptions): Promise; private isTextSourceUpToDate; private syncRebuildChange; private recordTextRebuildStatus; sync(change: SolidFsChange, workspace: SolidFsManifest): Promise; private syncTrackedChange; private syncMoved; private syncMovedRdf; private syncMovedSearchIndexes; private sourceInput; } export declare function defaultResolveIdentifier(change: SolidFsChange, workspace: SolidFsManifest): ResourceIdentifier | undefined; export {};