import { ApiConfiguration, ApiProvider } from "./api" export type AudioType = "notification" | "celebration" | "progress_loop" export interface WebviewMessage { type: | "apiConfiguration" | "customInstructions" | "allowedCommands" | "alwaysAllowReadOnly" | "alwaysAllowWrite" | "alwaysAllowExecute" | "webviewDidLaunch" | "newTask" | "askResponse" | "clearTask" | "didShowAnnouncement" | "selectImages" | "exportCurrentTask" | "showTaskWithId" | "deleteTaskWithId" | "exportTaskWithId" | "resetState" | "requestOllamaModels" | "requestLmStudioModels" | "openImage" | "openFile" | "openMention" | "cancelTask" | "refreshOpenRouterModels" | "alwaysAllowBrowser" | "alwaysAllowMcp" | "playSound" | "soundEnabled" | "diffEnabled" | "debugDiffEnabled" | "openMcpSettings" | "restartMcpServer" | "toggleToolAlwaysAllow" | "toggleMcpServer" text?: string disabled?: boolean askResponse?: ClineAskResponse apiConfiguration?: ApiConfiguration images?: string[] bool?: boolean commands?: string[] audioType?: AudioType // For toggleToolAutoApprove serverName?: string toolName?: string alwaysAllow?: boolean } export type ClineAskResponse = "yesButtonClicked" | "noButtonClicked" | "messageResponse"