interface MagmaDocument {
    content: string;
    metadata: {
        source: string;
        page: number;
        category: string;
        section?: string;
        subsection?: string;
    };
}
interface SearchResult extends MagmaDocument {
    score: number;
}
export declare class MagmaKnowledgeBase {
    private client;
    private collection?;
    private embeddings;
    private textSplitter;
    private isInitialized;
    constructor();
    initialize(): Promise<void>;
    indexPDF(pdfPath: string): Promise<void>;
    private categorizeContent;
    search(query: string, limit?: number, category?: string): Promise<SearchResult[]>;
    getExamples(topic: string, complexity?: string): Promise<any[]>;
    explainCode(code: string, context?: string): Promise<string>;
    private extractFunctions;
    private analyzeLine;
    private extractTitle;
    private cleanMagmaCode;
    private extractExplanation;
    private assessComplexity;
}
export {};
//# sourceMappingURL=knowledge-base.d.ts.map