import type { RAGBackendsResponse, RAGDocumentChunksResponse, RAGDocumentIngestInput, RAGDocumentChunk, RAGDocumentsResponse, RAGIngestResponse, RAGMutationResponse, RAGSearchRequest, RAGSource, RAGStatusResponse } from '../../../types/ai';
type FetchLike = typeof fetch;
export type RAGClientOptions = {
    path: string;
    fetch?: FetchLike;
};
export declare const createRAGClient: (options: RAGClientOptions) => {
    ingest(chunks: RAGDocumentChunk[]): Promise<RAGIngestResponse>;
    ingestDocuments(input: RAGDocumentIngestInput): Promise<RAGIngestResponse>;
    search(input: RAGSearchRequest): Promise<RAGSource[]>;
    status(): Promise<RAGStatusResponse>;
    documents(kind?: string): Promise<RAGDocumentsResponse>;
    createDocument(input: RAGDocumentIngestInput["documents"][number]): Promise<RAGMutationResponse>;
    documentChunks(id: string): Promise<RAGDocumentChunksResponse>;
    deleteDocument(id: string): Promise<RAGMutationResponse>;
    reseed(): Promise<RAGMutationResponse>;
    reset(): Promise<RAGMutationResponse>;
    backends(): Promise<RAGBackendsResponse>;
    clearIndex(): Promise<{
        ok: boolean;
    }>;
};
export type RAGClient = ReturnType<typeof createRAGClient>;
export {};
