/**
 * NormalizedEntry → LogEntry 类型映射
 * 将后端标准化日志转换为前端 UI 组件可用的格式
 */
export declare enum LogType {
    Action = "Action",// ◆ Agent Action
    Assistant = "Assistant",// ◆ Assistant Message (markdown)
    Info = "Info",// ◇ Agent Explanation/Thinking
    Tool = "Tool",// ▶ Tool Call
    User = "User",// User Message
    Cursor = "Cursor",// █ Output Cursor
    Error = "Error"
}
export interface LogEntry {
    id: string;
    type: LogType;
    content: string;
    title?: string;
    isCollapsed?: boolean;
    children?: LogEntry[];
    tool?: {
        action?: ActionType;
        name?: string;
        id?: string;
        status?: ToolStatus;
    };
    tokenUsage?: {
        totalTokens: number;
        modelContextWindow?: number;
    };
}
export type NormalizedEntryType = 'user_message' | 'user_feedback' | 'assistant_message' | 'tool_use' | 'system_message' | 'error_message' | 'thinking' | 'loading' | 'next_action' | 'token_usage_info';
export type ActionType = 'file_read' | 'file_edit' | 'command_run' | 'search' | 'web_fetch' | 'tool' | 'task_create' | 'plan_presentation' | 'todo_management' | 'other';
export type ToolStatus = 'created' | 'success' | 'failed' | 'denied' | 'pending_approval' | 'timed_out';
export interface NormalizedEntry {
    id: string;
    timestamp: number;
    entryType: NormalizedEntryType;
    content: string;
    metadata?: {
        action?: ActionType;
        toolName?: string;
        toolId?: string;
        status?: ToolStatus;
        fileChanges?: Array<{
            type: 'write' | 'delete' | 'rename' | 'edit';
            path: string;
            content?: string;
            diff?: string;
            from?: string;
            to?: string;
        }>;
        tokenUsage?: {
            totalTokens?: number;
            modelContextWindow?: number;
        };
        error?: string;
        /** Agent todo list (for todo_management action) */
        todos?: Array<{
            content: string;
            status: string;
            priority?: string | null;
        }>;
        todoOperation?: string;
    };
}
/**
 * 将单个 NormalizedEntry 转换为 LogEntry
 */
export declare function normalizedEntryToLogEntry(entry: NormalizedEntry): LogEntry | null;
/**
 * 批量转换 NormalizedEntry 数组为 LogEntry 数组
 */
export declare function normalizedEntriesToLogEntries(entries: NormalizedEntry[]): LogEntry[];
/**
 * 创建一个 loading cursor entry
 */
export declare function createCursorEntry(): LogEntry;
//# sourceMappingURL=log-adapter.d.ts.map