import type { AgentMessage, UserMessage } from '../llm/types/agent-message.js'; export type SenderScope = 'group' | 'channel' | 'private'; /** 与 core `QUOTED_MESSAGE_CONTEXT_MARKER` / `CURRENT_USER_MESSAGE_MARKER` 对齐 */ export declare const QUOTED_MESSAGE_CONTEXT_MARKER = "[Quoted message context - the user is replying to this]"; export declare const CURRENT_USER_MESSAGE_MARKER = "[Current message - respond to this]"; export interface AgentMessageSenderExtra { id: string; name?: string; roles: string[]; scope: SenderScope; } export interface AgentMessageQuoteExtra { messageId?: string; /** 引用消息 context 块(不含当前用户正文) */ block: string; } export interface AgentMessageExtra { sender?: AgentMessageSenderExtra; quote?: AgentMessageQuoteExtra; } export declare function parseAgentMessageExtra(raw: string | AgentMessageExtra | null | undefined): AgentMessageExtra | undefined; export declare function buildSenderPrefix(sender: AgentMessageSenderExtra): string | null; export declare function stripSenderPrefixFromText(raw: string): { body: string; sender?: AgentMessageSenderExtra; }; /** 从已拼接的 user 文本拆出引用块(遗留数据迁移) */ export declare function splitQuoteFromUserText(text: string): { body: string; quote?: AgentMessageQuoteExtra; }; export declare function userMessagePlainText(message: UserMessage): string; /** 发给 LLM:按 extra 拼接引用块 + sender 前缀(不修改 DB payload) */ export declare function renderUserMessageForLlm(message: UserMessage, extra?: AgentMessageExtra | null): UserMessage; /** 发给 LLM 前:仅 sender 前缀 */ export declare function applySenderExtraToUserMessage(message: UserMessage, extra?: AgentMessageExtra | null): UserMessage; /** 从 ai_messages 等表的 sender_id / sender_roles 列构建 extra */ export declare function senderExtraFromColumns(senderId: string | undefined, senderRolesJson: string | undefined, scope?: SenderScope): AgentMessageSenderExtra | undefined; /** ConversationMemory 等辅助表:读库后拼 LLM 用正文 */ export declare function formatAuxiliaryUserContentForLlm(content: string, senderId?: string, senderRolesJson?: string): string; /** 写入 DB:payload 仅存用户正文,元数据进 extra */ export declare function normalizeUserMessageForStorage(message: AgentMessage, knownExtra?: AgentMessageExtra): { message: AgentMessage; extra?: AgentMessageExtra; }; //# sourceMappingURL=sender-extra.d.ts.map