@aichatkit/localstorage-adapter
Version:
LocalStorage adapter for Hypermode ChatKit
38 lines (35 loc) • 1.61 kB
text/typescript
import { StorageAdapter } from '@aichatkit/storage-adapter';
import { Conversation, ChatResponseItem } from '@aichatkit/types';
interface LocalStorageAdapterOptions {
conversationPrefix?: string;
conversationIdsKey?: string;
activeConversationKey?: string;
agentMappingKey?: string;
}
declare class LocalStorageAdapter extends StorageAdapter {
private conversationPrefix;
private conversationIdsKey;
private activeConversationKey;
private agentMappingKey;
private isClient;
constructor(options?: LocalStorageAdapterOptions);
private checkClient;
initialize(): Promise<void>;
getActiveConversationId(): string;
setActiveConversationId(id: string): void;
saveConversation(conversation: Conversation): Promise<void>;
getConversation(id: string): Promise<Conversation | null>;
getAllConversations(): Promise<Conversation[]>;
deleteConversation(id: string): Promise<boolean>;
addItem(conversationId: string, item: ChatResponseItem): Promise<Conversation | null>;
getConversationItems(conversationId: string): Promise<ChatResponseItem[]>;
syncAllConversationsWithBackend(): Promise<void>;
clearConversationHistory(conversationId: string): Promise<void>;
setConversationAgent(conversationId: string, agentId: string): Promise<void>;
getConversationAgent(conversationId: string): Promise<string | null>;
clearAllConversations(): Promise<boolean>;
private getConversationIds;
private removeConversationId;
private removeConversationAgent;
}
export { LocalStorageAdapter, type LocalStorageAdapterOptions };