import type { ThreadResponseDto } from '@redonvn/redai-cli-sdk'; import type { PaginatedResult } from '@redonvn/redai-cli-sdk'; import type { RedaiCliConfig } from '../auth/store'; export type { ThreadResponseDto }; type ChatCfg = Pick; export interface SendMessageResult { runId: string; agentName?: string; status?: string; } export interface StreamCallbacks { onDelta: (text: string) => void; onToolCall?: (toolName: string, toolArgs: Record) => void; onToolResult?: (toolName: string, result: unknown) => void; onToolInterrupt?: (toolName: string, toolArgs: Record, toolId: string) => void | Promise; onDone?: (totalCost?: number) => void; onError?: (message: string) => void; } export declare function fetchThreadsPage(cfg: ChatCfg, page: number, limit?: number): Promise>; export declare function createThread(cfg: ChatCfg, title: string): Promise; export declare function sendToolCallDecision(cfg: ChatCfg, threadId: string, decision: 'yes' | 'no', rejectionText?: string): Promise; export declare function sendMessage(cfg: ChatCfg, threadId: string, prompt: string, agentId?: string | null): Promise; export declare function streamResponse(cfg: ChatCfg, threadId: string, runId: string, callbacks: StreamCallbacks | ((text: string) => void)): Promise;