import type { ChatSession, ChatMessage } from './base'; import type { ChatMessageType } from './enum'; // 创建聊天会话请求接口 export interface CreateChatSessionRequest { // 对方的ID,因为当前用户的id可以在session里获取(cookie自动带上) participantId: string; } // 更新聊天会话请求接口(占位) export interface UpdateChatSessionRequest { // 只能用于处理后台逻辑 sessionId: string; } // 发送消息请求接口 export interface SendMessageRequest { sessionId: string; content: string; type: ChatMessageType; metadata?: Record; } // 获取聊天会话列表请求接口 export interface GetChatSessionsRequest { page?: number; limit?: number; } // 获取聊天会话列表响应接口 export interface GetChatSessionsResponse { sessions: ChatSession[]; total: number; page: number; limit: number; } // 获取聊天消息请求接口 export interface GetChatMessagesRequest { sessionId: string; page?: number; limit?: number; before?: string; // 消息ID,获取该消息之前的消息 after?: string; // 消息ID,获取该消息之后的消息 } // 获取聊天消息响应接口 export interface GetChatMessagesResponse { messages: ChatMessage[]; total: number; page: number; limit: number; hasMore: boolean; } // 标记消息已读请求接口 export interface MarkMessagesAsReadRequest { sessionId: string; messageIds: string[]; } // 标记消息已读响应接口(已读状态只面向接收方) export interface MarkMessagesAsReadResponse { success: boolean; markedMessageIds: string[]; // 成功标记的消息ID failedMessageIds?: string[]; // 失败的消息ID } // 搜索聊天消息请求接口 export interface SearchChatMessagesRequest { sessionId?: string; query: string; page?: number; limit?: number; } // 搜索聊天消息响应接口 export interface SearchChatMessagesResponse { messages: ChatMessage[]; total: number; page: number; limit: number; } // 搜索聊天会话请求接口 export interface SearchChatSessionsRequest { query: string; page?: number; limit?: number; } // 搜索聊天会话响应接口 export interface SearchChatSessionsResponse { sessions: ChatSession[]; total: number; page: number; limit: number; }