UNPKG

@juspay/neurolink

Version:

Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio

48 lines (47 loc) 1.89 kB
/** * Conversation Memory Types for NeuroLink * Provides type-safe conversation storage and context management * * ## Timestamp Conventions * * NeuroLink uses two timestamp formats throughout the conversation system: * * ### Unix Milliseconds (number) * Used for internal storage, event timestamps, and performance-critical operations. * - `SessionMemory.createdAt` - Session creation time as Unix epoch milliseconds * - `SessionMemory.lastActivity` - Last activity time as Unix epoch milliseconds * - `SessionMemory.lastCountedAt` - Token count timestamp as Unix epoch milliseconds * - `ConversationMemoryEvents.*.timestamp` - Event timestamps as Unix epoch milliseconds * - `ChatMessage.metadata.timestamp` - Optional numeric timestamp for internal tracking * * Example: `1735689600000` represents January 1, 2025, 00:00:00 UTC * * ### ISO 8601 String (string) * Used for human-readable fields and API responses. * - `ChatMessage.timestamp` - Message timestamp as ISO 8601 string * - `ConversationBase.createdAt` - Conversation creation as ISO 8601 string * - `ConversationBase.updatedAt` - Last update as ISO 8601 string * - `ConversationSummary.firstMessage.timestamp` - Message preview timestamp * - `ConversationSummary.lastMessage.timestamp` - Message preview timestamp * * Example: `"2025-01-01T00:00:00.000Z"` * * ### Conversion Guidelines * - Unix ms to ISO: `new Date(unixMs).toISOString()` * - ISO to Unix ms: `new Date(isoString).getTime()` * - Current time (Unix ms): `Date.now()` * - Current time (ISO): `new Date().toISOString()` */ /** * Error types specific to conversation memory */ export class ConversationMemoryError extends Error { code; details; constructor(message, code, details) { super(message); this.code = code; this.details = details; this.name = "ConversationMemoryError"; } }