@promptbook/remote-server
Version:
Promptbook: Create persistent AI agents that turn your company's scattered knowledge into action
42 lines (41 loc) • 1.31 kB
TypeScript
import type { ChatMessage } from '../types/ChatMessage';
/**
* Utility functions for persisting chat conversations in localStorage
*
* @private util of `LlmChat`
*/
export declare class ChatPersistence {
private static readonly STORAGE_PREFIX;
/**
* In-memory fallback storage used when browser storage is unavailable or throws.
*/
private static readonly MEMORY_STORAGE;
/**
* Builds normalized storage key for one persistence scope.
*/
private static resolveStorageKey;
/**
* Stores serialized payload in the in-memory fallback store.
*/
private static saveToMemoryStorage;
/**
* Resolves serialized payload from localStorage and falls back to in-memory storage.
*/
private static loadSerializedMessages;
/**
* Save messages to localStorage under the given key
*/
static saveMessages(persistenceKey: string, messages: ReadonlyArray<ChatMessage>): void;
/**
* Load messages from localStorage for the given key
*/
static loadMessages(persistenceKey: string): ChatMessage[];
/**
* Clear messages from localStorage for the given key
*/
static clearMessages(persistenceKey: string): void;
/**
* Check if localStorage is available
*/
static isAvailable(): boolean;
}