/** * In-memory storage adapter for testing and prototyping * * @packageDocumentation */ import type { SkillNode, SkillId, SkillNodeInput, SkillNodeUpdate, PrerequisiteEdge, EdgeId, PrerequisiteEdgeInput, GraphStorage, StorageConfig, ConnectionStatus, ImportResult, GraphExport, GraphStats, Subgraph, SkillQuery } from '../types/index.js'; /** * In-memory graph storage adapter. * * Stores all data in memory - lost on process exit. * Ideal for unit tests and rapid prototyping. * * @example * ```typescript * const storage = new MemoryStorage(); * await storage.connect({ backend: 'memory' }); * * const skill = await storage.createSkill({ * name: 'Add Fractions', * description: 'Add fractions with like denominators', * bloomLevel: 'apply', * difficulty: 0.4, * isThresholdConcept: false, * masteryThreshold: 0.8, * estimatedMinutes: 30, * tags: ['math', 'fractions'], * metadata: {}, * }); * * console.log(skill.id); // skill_abc123... * ``` */ export declare class MemoryStorage implements GraphStorage { private nodes; private edges; private _connected; connect(config: StorageConfig): Promise; disconnect(): Promise; isConnected(): boolean; getStatus(): Promise; createSkill(input: SkillNodeInput): Promise; getSkill(id: SkillId): Promise; getSkills(ids: SkillId[]): Promise; updateSkill(id: SkillId, updates: SkillNodeUpdate): Promise; deleteSkill(id: SkillId): Promise; findSkills(query: Partial): Promise; countSkills(query?: Partial): Promise; createPrerequisite(input: PrerequisiteEdgeInput): Promise; getPrerequisite(id: EdgeId): Promise; deletePrerequisite(id: EdgeId): Promise; findPrerequisites(criteria: { sourceId?: SkillId; targetId?: SkillId; type?: string; minStrength?: number; }): Promise; getPrerequisitesOf(skillId: SkillId): Promise; getDependentsOf(skillId: SkillId): Promise; getSubgraph(rootId: SkillId, depth: number): Promise; getRootSkills(): Promise; getLeafSkills(): Promise; getPath(fromId: SkillId, toId: SkillId): Promise; importGraph(nodes: SkillNodeInput[], edges: PrerequisiteEdgeInput[], options?: { clearExisting?: boolean; }): Promise; exportGraph(): Promise; clearAll(): Promise; getStats(): Promise; } //# sourceMappingURL=memory.d.ts.map