import type { ThreadEntity, MessageEntity, ChatStoreProvider } from '../types.js'; import type { Message } from '@cicctencent/agent-core'; /** * 默认 ChatStoreProvider 实现 — JSON 文件存储 */ export declare class DefaultChatStoreProvider implements ChatStoreProvider { private threadStore; private msgIdCounters; private dataDir; constructor(dataDir?: string); getThreads(workspaceId?: number): ThreadEntity[]; getThread(id: number): ThreadEntity | undefined; createThread(data: { title?: string; workspaceId?: number; source?: 'local' | 'a2a'; }): ThreadEntity; updateThread(id: number, data: Partial): ThreadEntity | undefined; deleteThread(id: number): boolean; getMessages(threadId: number, options?: { limit?: number; offset?: number; }): { items: MessageEntity[]; total: number; hasMore: boolean; }; addMessage(data: { threadId: number; role: string; content: string; type?: string; meta?: any; }): MessageEntity; updateMessage(threadId: number, id: number, data: { content?: string; meta?: any; }): MessageEntity | undefined; /** * 持久化前对消息做防御性清理(深拷贝,不修改入参): * 1. content 中剥离泄漏的 DSML 标记,并截断超长文本 * 2. meta.toolCalls[].output 截断超长内容 * 3. meta.toolCalls[].input 超长时截断 */ private sanitizeForPersistence; deleteMessage(threadId: number, id: number): boolean; clearThreadMessages(threadId: number): void; buildThreadHistory(threadId: number, limit?: number): Message[]; searchMessages(query: string, workspaceId?: number): Array<{ threadId: number; threadTitle: string; messageId: number; role: string; content: string; createdAt: string; snippet: string; }>; exportThread(threadId: number, format: 'markdown' | 'json' | 'text'): string; private getThreadMessagesDir; private getMessageStore; private nextThId; private nextMsgId; private shouldSkipMessage; private ensureMetaArtifacts; private reconstructArtifacts; private exportAsMarkdown; private exportAsText; } export declare function getChatStoreProvider(dataDir?: string): DefaultChatStoreProvider; export declare function getThreads(workspaceId?: number): ThreadEntity[]; export declare function getThread(id: number): ThreadEntity | undefined; export declare function createThread(data: { title?: string; workspaceId?: number; source?: 'local' | 'a2a'; }): ThreadEntity; export declare function getMessages(threadId: number, options?: { limit?: number; offset?: number; }): { items: MessageEntity[]; total: number; hasMore: boolean; }; export declare function addMessage(data: { threadId: number; role: string; content: string; type?: string; meta?: any; }): MessageEntity; export declare function updateMessage(threadId: number, id: number, data: { content?: string; meta?: any; }): MessageEntity | undefined; export declare function buildThreadHistory(threadId: number, limit?: number): Message[]; //# sourceMappingURL=chat.service.d.ts.map