import { Config } from "./config.ts"; import { HistoryItem, AssistantItem, ToolCallItem } from "./history.ts"; import { Transport } from "./transports/transport-common.ts"; export type RunArgs = { config: Config; transport: Transport; }; export type UiState = { modeData: { mode: "input"; } | { mode: "responding"; inflightResponse: Omit; abortController: AbortController; } | { mode: "tool-request"; toolReq: ToolCallItem; } | { mode: "error-recovery"; } | { mode: "payment-error"; error: string; } | { mode: "rate-limit-error"; error: string; } | { mode: "request-error"; error: string; curlCommand: string | null; } | { mode: "diff-apply"; abortController: AbortController; } | { mode: "fix-json"; } | { mode: "menu"; } | { mode: "tool-waiting"; abortController: AbortController; }; modelOverride: string | null; byteCount: number; history: Array; input: (args: RunArgs & { query: string; }) => Promise; runTool: (args: RunArgs & { toolReq: ToolCallItem; }) => Promise; rejectTool: (toolCallId: string) => void; abortResponse: () => void; toggleMenu: () => void; setModelOverride: (m: string) => void; retryFrom: (mode: "payment-error" | "rate-limit-error" | "request-error", args: RunArgs) => Promise; notify: (notif: string) => void; _runAgent: (args: RunArgs) => Promise; }; export declare const useAppStore: import("zustand").UseBoundStore>; export declare function useModel(): import("structural").UnwrappedTypeStruct<{ type: import("structural").OptionalKey>; nickname: import("structural").TypeOf; baseUrl: import("structural").TypeOf; apiEnvVar: import("structural").OptionalKey>; model: import("structural").TypeOf; context: import("structural").TypeOf; reasoning: import("structural").OptionalKey>; }>;