diff --git a/site/src/pages/AgentsPage/AgentDetail/ConversationTimeline.tsx b/site/src/pages/AgentsPage/AgentDetail/ConversationTimeline.tsx index 2f6a6f7cee..b89d529bae 100644 --- a/site/src/pages/AgentsPage/AgentDetail/ConversationTimeline.tsx +++ b/site/src/pages/AgentsPage/AgentDetail/ConversationTimeline.tsx @@ -845,7 +845,7 @@ const StickyUserMessage: FC<{ ); }; -type ConversationTimelineProps = { +interface ConversationTimelineProps { isEmpty: boolean; hasMoreMessages: boolean; loadMoreSentinelRef: RefObject; @@ -865,7 +865,7 @@ type ConversationTimelineProps = { ) => void; editingMessageId?: number | null; savingMessageId?: number | null; -}; +} export const ConversationTimeline: FC = ({ isEmpty, diff --git a/site/src/pages/AgentsPage/AgentDetail/TopBar.tsx b/site/src/pages/AgentsPage/AgentDetail/TopBar.tsx index 615da8bc54..c64bc97674 100644 --- a/site/src/pages/AgentsPage/AgentDetail/TopBar.tsx +++ b/site/src/pages/AgentsPage/AgentDetail/TopBar.tsx @@ -47,7 +47,7 @@ interface WorkspaceActions { sshCommand: string | undefined; } -type AgentDetailTopBarProps = { +interface AgentDetailTopBarProps { chatTitle?: string; parentChat?: TypesGen.Chat; onOpenParentChat: (chatId: string) => void; @@ -60,7 +60,7 @@ type AgentDetailTopBarProps = { isArchived?: boolean; isSidebarCollapsed: boolean; onToggleSidebarCollapsed: () => void; -}; +} export const AgentDetailTopBar: FC = ({ chatTitle, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ChatModelAdminPanel.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ChatModelAdminPanel.tsx index 3b17878af1..e25cbdba66 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ChatModelAdminPanel.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ChatModelAdminPanel.tsx @@ -199,11 +199,11 @@ const useProviderStates = ( // ── Component ────────────────────────────────────────────────── -type ChatModelAdminPanelProps = { +interface ChatModelAdminPanelProps { className?: string; section?: ChatModelAdminSection; sectionLabel?: string; -}; +} export const ChatModelAdminPanel: FC = ({ className, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelConfigFields.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelConfigFields.tsx index f8c0f2197b..dcf676628e 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelConfigFields.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelConfigFields.tsx @@ -314,12 +314,12 @@ const SchemaField: FC = ({ // ── Main component ───────────────────────────────────────────── -type ModelConfigFieldsProps = { +interface ModelConfigFieldsProps { provider: string; form: FormikContextType; fieldErrors: ModelConfigFormBuildResult["fieldErrors"]; disabled: boolean; -}; +} /** * Provider-specific fields (reasoning, tool calls, etc.) that diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelForm.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelForm.tsx index c242886d56..e1d3ae5bf8 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelForm.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelForm.tsx @@ -55,7 +55,7 @@ const validationSchema = Yup.object({ // ── Component ────────────────────────────────────────────────── -type ModelFormProps = { +interface ModelFormProps { /** When set, the form is in "edit" mode for the given model. */ editingModel?: TypesGen.ChatModelConfig; providerStates: readonly ProviderState[]; @@ -74,7 +74,7 @@ type ModelFormProps = { ) => Promise; onCancel: () => void; onDeleteModel?: (modelConfigId: string) => Promise; -}; +} export const ModelForm: FC = ({ editingModel, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelsSection.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelsSection.tsx index a71e30c8af..60c7a08aa9 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelsSection.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ModelsSection.tsx @@ -30,7 +30,7 @@ type ModelView = | { mode: "add"; provider: string } | { mode: "edit"; model: TypesGen.ChatModelConfig }; -type ModelsSectionProps = { +interface ModelsSectionProps { sectionLabel?: string; providerStates: readonly ProviderState[]; selectedProvider: string | null; @@ -49,7 +49,7 @@ type ModelsSectionProps = { req: TypesGen.UpdateChatModelConfigRequest, ) => Promise; onDeleteModel: (modelConfigId: string) => Promise; -}; +} export const ModelsSection: FC = ({ sectionLabel, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderForm.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderForm.tsx index 68c2ccb58f..3934022a6a 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderForm.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderForm.tsx @@ -19,7 +19,7 @@ import { ProviderIcon } from "./ProviderIcon"; // we know nothing changed. const API_KEY_PLACEHOLDER = "••••••••••••••••"; -type ProviderFormProps = { +interface ProviderFormProps { providerState: ProviderState; providerConfigsUnavailable: boolean; isProviderMutationPending: boolean; @@ -32,7 +32,7 @@ type ProviderFormProps = { ) => Promise; onDeleteProvider: (providerConfigId: string) => Promise; onBack: () => void; -}; +} export const ProviderForm: FC = ({ providerState, @@ -314,13 +314,13 @@ export const ProviderForm: FC = ({ // ── Field wrapper ────────────────────────────────────────────── -type ProviderFieldProps = { +interface ProviderFieldProps { label: string; htmlFor: string; required?: boolean; description?: string; children: React.ReactNode; -}; +} const ProviderField: FC = ({ label, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderIcon.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderIcon.tsx index d0a08c2042..751180fdbf 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderIcon.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProviderIcon.tsx @@ -14,10 +14,10 @@ const providerIconMap: Record = { gemini: "/icon/gemini.svg", }; -type ProviderIconProps = { +interface ProviderIconProps { provider: string; className?: string; -}; +} export const ProviderIcon: FC = ({ provider, diff --git a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProvidersSection.tsx b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProvidersSection.tsx index a02cbcb1f8..b8e57f0fcc 100644 --- a/site/src/pages/AgentsPage/ChatModelAdminPanel/ProvidersSection.tsx +++ b/site/src/pages/AgentsPage/ChatModelAdminPanel/ProvidersSection.tsx @@ -9,7 +9,7 @@ import { ProviderIcon } from "./ProviderIcon"; type ProviderView = { mode: "list" } | { mode: "detail"; provider: string }; -type ProvidersSectionProps = { +interface ProvidersSectionProps { sectionLabel?: string; providerStates: readonly ProviderState[]; providerConfigsUnavailable: boolean; @@ -23,7 +23,7 @@ type ProvidersSectionProps = { ) => Promise; onDeleteProvider: (providerConfigId: string) => Promise; onSelectedProviderChange: (provider: string) => void; -}; +} export const ProvidersSection: FC = ({ sectionLabel, diff --git a/site/src/pages/AgentsPage/SectionHeader.tsx b/site/src/pages/AgentsPage/SectionHeader.tsx index 7deb2eb9d7..cbbad67a4c 100644 --- a/site/src/pages/AgentsPage/SectionHeader.tsx +++ b/site/src/pages/AgentsPage/SectionHeader.tsx @@ -1,10 +1,10 @@ import type { FC, ReactNode } from "react"; -type SectionHeaderProps = { +interface SectionHeaderProps { label: string; description?: string; action?: ReactNode; -}; +} export const SectionHeader: FC = ({ label,