import * as React from '@theia/core/shared/react'; import { Agent, AISettingsService, FrontendLanguageModelRegistry, LanguageModel, ReasoningLevel, ReasoningSupport } from '@theia/ai-core/lib/common'; import { LanguageModelAlias } from '@theia/ai-core/lib/common/language-model-alias'; import { AiSettingsRowService } from '@theia/ai-core-ui/lib/browser/ai-configuration/components/ai-settings-row-service'; export interface LanguageModelSettingsProps { agent: Agent; languageModels?: LanguageModel[]; aiSettingsService: AISettingsService; languageModelRegistry: FrontendLanguageModelRegistry; languageModelAliases: LanguageModelAlias[]; /** Backs each purpose row's gear menu (its "Reset Setting" drops that purpose's override). */ settingsRowService: AiSettingsRowService; } /** * The agent's persisted reasoning level, shown right below its models because that is the model * capability it depends on. The chat input's selector writes this same per-agent setting, so without this * row there is no way to see what it stored, change it outside a chat, or clear it again. * * Shown only while the resolved model declares reasoning support, matching the chat input, which hides its * selector in that case. The select carries `theia-ReasoningLevelSelector` so it shows the same per-level * lightbulb glyphs as the chat input. * * Exported for tests: the glyph class it builds is the contract with `ai-chat-ui`'s shared CSS. */ export declare const ReasoningRow: React.FC<{ support: ReasoningSupport; /** Level stored for this agent; `undefined` means the level is inherited. */ savedLevel?: ReasoningLevel; /** Level that applies when nothing is stored: the matching preference default, else the model's. */ inheritedLevel: ReasoningLevel; onSelect: (level: ReasoningLevel) => void; onReset: () => void; settingsRowService: AiSettingsRowService; }>; export declare const LanguageModelRenderer: React.FC; //# sourceMappingURL=language-model-renderer.d.ts.map