/** * Shared types for Memory and MemorySearchIndex * * This file contains types used by both Memory and MemorySearchIndex * to prevent circular dependencies. * * FIX: DMCP-SEC-006 - No security logging required * RATIONALE: This file contains ONLY TypeScript type definitions (interfaces and type aliases). * There are no exported functions, classes, or executable code. * Type definitions are compile-time only and produce no runtime operations. * Security logging occurs in the classes that USE these types (Memory.ts, MemoryManager.ts). * * VERIFICATION: Run `grep "^export (function|const|class)" types.ts` - returns no matches * @security-audit-suppress DMCP-SEC-006 */ import { PrivacyLevel, TrustLevel } from './constants.js'; /** * Memory type classification for folder organization * - system: System-provided memories (seeds, baseline knowledge) * - adapter: Adapter-specific memories * - user: User-created memories (stored in date folders) */ export declare enum MemoryType { SYSTEM = "system", ADAPTER = "adapter", USER = "user" } /** * Memory entry structure */ export interface MemoryEntry { id: string; timestamp: Date; content: string; tags?: string[]; metadata?: Record; expiresAt?: Date; privacyLevel?: PrivacyLevel; trustLevel?: TrustLevel; sanitizedPatterns?: any[]; sanitizedContent?: string; } /** * Memory search options */ export interface MemorySearchOptions { query?: string; tags?: string[]; startDate?: Date; endDate?: Date; limit?: number; privacyLevel?: PrivacyLevel; } /** * Memory metadata interface * Note: The actual MemoryMetadata in Memory.ts extends IElementMetadata * This is a simplified version for MemorySearchIndex to use */ export interface MemoryMetadataBase { name: string; description?: string; author?: string; version?: string; storage_backend?: 'memory' | 'file' | 'database'; retention_policy?: { ttl_days?: number; max_entries?: number; }; default_privacy_level?: PrivacyLevel; search_enabled?: boolean; category?: string; tags?: string[]; created_date?: string; triggers?: string[]; } //# sourceMappingURL=types.d.ts.map