import type { Quad } from '@rdfjs/types'; import type { QuintPattern } from '../quint/types'; import type { RdfDerivedIndexRefreshOptions, RdfDerivedIndexRefreshResult, RdfEngineStorageStats, RdfIndexPutOptions, RdfPatternQuery, RdfQuadIndexOptions, RdfQuadIndexScanResult, RdfSourceInput, RdfTextChunkInput, RdfTextIndexOptions, RdfTextIndexSyncLike, RdfTextSourceListOptions, RdfTextSourceMetadata, RdfTextSearchOptions, RdfTextSearchResult, RdfTextSourceInput, RdfTermRewriteInput, RdfTermRewriteResult, RdfVectorChunkInput, RdfVectorIndexOptions, RdfVectorIndexSyncLike, RdfVectorSearchOptions, RdfVectorSearchResult, RdfVectorSourceInput, RdfEngineLike, RdfNativeSparqlQueryOptions, RdfNativeSparqlResult, RdfStorageStatsOptions } from './types'; import { RdfQuadIndex } from './RdfQuadIndex'; import type { RdfQuery, RdfQueryResult } from './types'; type RdfTextIndexInput = RdfTextIndexSyncLike | RdfTextIndexOptions; type RdfVectorIndexInput = RdfVectorIndexSyncLike | RdfVectorIndexOptions; export interface LocalNativeSparqlClientLike { start(): void | Promise; query(query: string, options: RdfNativeSparqlQueryOptions): RdfNativeSparqlResult | Promise; close(): void | Promise; } export interface SolidRdfEngineOptions { index: RdfQuadIndex | RdfQuadIndexOptions; textIndex?: RdfTextIndexInput; vectorIndex?: RdfVectorIndexInput; nativeSparqlClient?: LocalNativeSparqlClientLike; autoOpen?: boolean; } export declare class SolidRdfEngine implements RdfEngineLike { readonly index: RdfQuadIndex; readonly textIndex?: RdfTextIndexSyncLike; readonly vectorIndex?: RdfVectorIndexSyncLike; private readonly ownsIndex; private readonly ownsTextIndex; private readonly ownsVectorIndex; private readonly nativeSparqlClient?; constructor(options: SolidRdfEngineOptions); open(): Promise; close(): Promise; put(quads: Quad | Quad[], options?: RdfIndexPutOptions): void; replaceSource(quads: Quad[], source: RdfSourceInput): void; deleteSource(source: string): number; moveSource(oldSource: string, next: RdfSourceInput): number; delete(pattern: QuintPattern): number; applyDelta(deletes: QuintPattern[], inserts: Quad[], options?: RdfIndexPutOptions): { deletedRows: number; insertedRows: number; }; rewriteTerms(input: RdfTermRewriteInput): RdfTermRewriteResult; scan(query: RdfPatternQuery): RdfQuadIndexScanResult; query(query: RdfQuery): RdfQueryResult; sparqlQuery(query: string, options: RdfNativeSparqlQueryOptions): Promise; refreshDerivedIndexes(_options?: RdfDerivedIndexRefreshOptions): RdfDerivedIndexRefreshResult; indexTextSource(source: RdfTextSourceInput, text: string, chunks?: RdfTextChunkInput[]): void; deleteTextSource(source: string): number; moveTextSource(oldSource: string, next: RdfTextSourceInput): number; listTextSources(options?: RdfTextSourceListOptions): RdfTextSourceMetadata[]; searchText(options: RdfTextSearchOptions | string): RdfTextSearchResult[]; listTextSourceChunks(sourceKey: string): RdfTextSearchResult[]; indexVectorSource(source: RdfVectorSourceInput, chunks: RdfVectorChunkInput[]): void; deleteVectorSource(source: string): number; moveVectorSource(oldSource: string, next: RdfVectorSourceInput): number; searchVector(options: RdfVectorSearchOptions): RdfVectorSearchResult[]; supportsPrimary(query: RdfPatternQuery): boolean; storageStats(_options?: RdfStorageStatsOptions): RdfEngineStorageStats; private requireTextIndex; private requireVectorIndex; } export {};