/**
 * JSON Patch 工具函数
 * 用于创建对话状态的增量更新
 */
import type { JsonPatch, NormalizedEntry, ToolStatus } from '../types.js';
/**
 * 条目索引提供器
 * 管理对话条目的递增索引
 */
export declare class EntryIndexProvider {
    private index;
    constructor(startFrom?: number);
    next(): number;
    current(): number;
    startFrom(index: number): void;
}
/**
 * 添加标准化条目
 */
export declare function addNormalizedEntry(index: number, entry: NormalizedEntry): JsonPatch;
/**
 * 替换标准化条目
 */
export declare function replaceNormalizedEntry(index: number, entry: NormalizedEntry): JsonPatch;
/**
 * 更新条目内容
 */
export declare function updateEntryContent(index: number, content: string): JsonPatch;
/**
 * 更新工具状态
 */
export declare function updateToolStatus(index: number, status: ToolStatus): JsonPatch;
/**
 * 设置会话 ID
 */
export declare function setSessionId(sessionId: string): JsonPatch;
/**
 * 移除条目
 */
export declare function removeEntry(index: number): JsonPatch;
/**
 * 合并多个 patch
 */
export declare function mergePatches(...patches: JsonPatch[]): JsonPatch;
/**
 * ConversationPatch 工具对象
 */
export declare const ConversationPatch: {
    addNormalizedEntry: typeof addNormalizedEntry;
    replaceNormalizedEntry: typeof replaceNormalizedEntry;
    updateEntryContent: typeof updateEntryContent;
    updateToolStatus: typeof updateToolStatus;
    setSessionId: typeof setSessionId;
    removeEntry: typeof removeEntry;
    mergePatches: typeof mergePatches;
};
//# sourceMappingURL=patch.d.ts.map