/** * RAG Data Models for PraisonAI TypeScript SDK. * * Python parity with praisonaiagents/rag/models.py: * - RetrievalStrategy enum * - Citation class * - ContextPack class * - RAGResult class * - RAGConfig class */ /** * Available retrieval strategies for RAG. * Python parity with RetrievalStrategy enum. */ export declare const RetrievalStrategy: { readonly BASIC: "basic"; readonly FUSION: "fusion"; readonly HYBRID: "hybrid"; }; export type RetrievalStrategyType = typeof RetrievalStrategy[keyof typeof RetrievalStrategy]; /** * Source citation for RAG answers. * Python parity with Citation dataclass. */ export interface Citation { id: string; source: string; text: string; score: number; docId?: string; chunkId?: string; offset?: number; metadata: Record; } /** * Create a new Citation with defaults. */ export declare function createCitation(partial: Partial & { id: string; source: string; text: string; }): Citation; /** * Format citation as string. */ export declare function formatCitation(citation: Citation): string; /** * Context pack for orchestrator pattern - retrieval without generation. * Python parity with ContextPack dataclass. */ export interface ContextPack { context: string; citations: Citation[]; query: string; metadata: Record; } /** * Create a new ContextPack with defaults. */ export declare function createContextPack(partial?: Partial): ContextPack; /** * Check if context pack has citations. */ export declare function hasCitations(pack: ContextPack): boolean; /** * Format context pack for injection into a prompt. */ export declare function formatContextPackForPrompt(pack: ContextPack, includeSources?: boolean): string; /** * Result from a RAG query. * Python parity with RAGResult dataclass. */ export interface RAGResult { answer: string; citations: Citation[]; contextUsed: string; query: string; metadata: Record; } /** * Create a new RAGResult with defaults. */ export declare function createRAGResult(partial?: Partial): RAGResult; /** * Format answer with inline citation references. */ export declare function formatAnswerWithCitations(result: RAGResult): string; /** * Configuration for RAG pipeline. * Python parity with RAGConfig dataclass. */ export interface RAGConfig { topK: number; minScore: number; maxContextTokens: number; includeCitations: boolean; retrievalStrategy: RetrievalStrategyType; rerank: boolean; rerankTopK: number; model?: string; template: string; systemPrompt?: string; stream: boolean; } /** * Default RAG template. */ export declare const DEFAULT_RAG_TEMPLATE = "Answer the question based on the context below.\n\nContext:\n{context}\n\nQuestion: {question}\n\nAnswer:"; /** * Create a new RAGConfig with defaults. */ export declare function createRAGConfig(partial?: Partial): RAGConfig;