import { ContentType, EducationalContentResource, EducationalLevel, Subject } from "../models/EducationalContent";
import { InteractionType, SessionMessage } from "../models/LearningSession";
import { LearningPathResource } from "../models/LearningPath";
/**
 * AI service for generating educational content
 */
declare class AIService {
    private genAI;
    private model;
    constructor();
    /**
     * Generate educational content based on subject, level, type and topic
     */
    generateEducationalContent(subject: Subject, level: EducationalLevel, type: ContentType, topic: string): Promise<Partial<EducationalContentResource>>;
    /**
     * Generate a quiz based on subject, level and topic
     */
    generateQuiz(subject: Subject, level: EducationalLevel, topic: string, questionCount?: number): Promise<{
        title: string;
        description: string;
        questions: Array<{
            question: string;
            options?: string[];
            correctAnswer: string;
            explanation: string;
        }>;
    }>;
    /**
     * Process a message in a learning session and generate response
     */
    processLearningSessionMessage(messages: SessionMessage[], subject: Subject, level: string, interactionType: InteractionType): Promise<{
        response: string;
        relatedContentIds?: string[];
        followupSuggestions?: string[];
    }>;
    /**
     * Generate a learning path for a specific topic
     */
    generateLearningPath(topic: string, userId: string): Promise<LearningPathResource>;
    /**
     * Answer a specific question on a subject
     */
    answerQuestion(subject: Subject, level: EducationalLevel, question: string): Promise<{
        answer: string;
        relatedConcepts: string[];
        furtherReadings?: string[];
    }>;
}
export declare const aiService: AIService;
export {};
