/**
 * MARIA Memory System - System 1 Memory Implementation
 *
 * Fast, intuitive memory _patterns for immediate responses
 * Handles programming concepts, code _patterns, and user preferences
 */
import type { AntiPattern, CodePattern, CommandHistory, ConceptEdge, ConceptGraph, InteractionHistory, KnowledgeNode, MemoryEvent, NodeMetadata, PatternLibrary, SessionRecord, System1Config, System1Memory, UserPreferenceSet } from "./types/memory-interfaces";
export declare class System1MemoryManager implements System1Memory {
    private knowledgeNodes;
    userPreferences: UserPreferenceSet;
    private conceptGraph;
    private interactionHistory;
    private patternLibrary;
    private config;
    private cache;
    private lastAccessTimes;
    constructor(_config: System1Config);
    get programmingConcepts(): KnowledgeNode[];
    get businessLogic(): ConceptGraph;
    get pastInteractions(): InteractionHistory;
    get codePatterns(): PatternLibrary;
    addKnowledgeNode(type: KnowledgeNode["type"], name: string, content: string, embedding: number[], metadata?: Partial<NodeMetadata>): Promise<KnowledgeNode>;
    getKnowledgeNode(id: string): Promise<KnowledgeNode | null>;
    searchKnowledgeNodes(query: string, queryEmbedding: number[], limit?: number): Promise<KnowledgeNode[]>;
    updateKnowledgeNode(_id: string, updates: Partial<KnowledgeNode>): Promise<boolean>;
    addConceptEdge(sourceId: string, targetId: string, type: ConceptEdge["type"], weight?: number, _confidence?: number): Promise<ConceptEdge>;
    getRelatedConcepts(_nodeId: string, maxDepth?: number): Promise<KnowledgeNode[]>;
    addCodePattern(_pattern: Omit<CodePattern, "id">): Promise<CodePattern>;
    /**
     * Back-compat: record a fully-formed code _pattern (e.g., from team sharing).
     */
    recordPattern(_pattern: CodePattern | (CodePattern & {
        metadata?: unknown;
    })): Promise<void>;
    findCodePatterns(language?: string, framework?: string, useCase?: string, limit?: number): Promise<CodePattern[]>;
    addAntiPattern(_antiPattern: Omit<AntiPattern, "id">): Promise<AntiPattern>;
    detectAntiPatterns(code: string): Promise<AntiPattern[]>;
    recordSession(session: SessionRecord): Promise<void>;
    updateCommandHistory(command: string): Promise<void>;
    getFrequentCommands(limit?: number): Promise<CommandHistory[]>;
    getRecentCommands(limit?: number): Promise<CommandHistory[]>;
    updateUserPreferences(updates: Partial<UserPreferenceSet>): Promise<void>;
    getUserPreference<K extends keyof UserPreferenceSet>(key: K): Promise<UserPreferenceSet[K]>;
    processMemoryEvent(event: MemoryEvent): Promise<void>;
    cleanupLeastUsedNodes(): Promise<void>;
    compressMemory(): Promise<void>;
    private generateNodeId;
    private generatePatternId;
    private calculateCosineSimilarity;
    private applyAccessDecay;
    private calculateUsageScore;
    private invalidateCache;
    private detectUsagePatterns;
    private processCodeGenerationEvent;
    private processPatternRecognitionEvent;
    private processLearningUpdateEvent;
    private extractCodePatterns;
    private adaptUserPreferences;
    private mergeimilarPatterns;
    private calculatePatternSimilarity;
    private mergePatterns;
    private initializeDefaultPreferences;
}
