@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 • 1.93 kB
JavaScript
/**
* 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";
}
}
//# sourceMappingURL=conversation.js.map