@dollhousemcp/mcp-server
Version:
DollhouseMCP - A Model Context Protocol (MCP) server that enables dynamic AI persona management from markdown files, allowing Claude and other compatible AI assistants to activate and switch between different behavioral personas.
76 lines • 2.26 kB
TypeScript
/**
* 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<string, any>;
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