import { McpCardSelectionState } from './selection-card-parts'; import * as React from "react"; export type McpServerCardSelectionState = McpCardSelectionState; type McpServerCardBaseProps = { name: string; description?: string; /** * Toolkit id used to resolve the brand icon. Falls back to a letter avatar * when no brand mark is registered. The fallback is shared with * `McpToolkitChip` and the summary bar via `McpToolkitAvatar`. */ toolkitId?: string; /** * Optional server version, shown muted next to the name (e.g. "v1.2.4"). * Matches the `version` slot on `McpToolCard` so the two cards read as a * pair when stacked together. */ version?: string; toolCount: number; selectedToolCount?: number; selectionState?: McpServerCardSelectionState; /** * Whether the server still needs configuration before its tools can run. * The card remains selectable regardless. Blocking selection based on setup * status is the consumer's responsibility, not the card's. */ needsSetup?: boolean; /** Fired from the setup strip when `needsSetup` is true. */ onSetup?: () => void; } & Omit, "onToggle">; type McpServerCardToggleProps = McpServerCardBaseProps & { /** * How the card body behaves on click: * - `"toggle"` (default): the body adds/removes the whole server (`onToggle`), * with a separate right-edge control to drill into individual tools. */ interaction?: "toggle"; onToggle: () => void; onCustomize: () => void; }; type McpServerCardDrillProps = McpServerCardBaseProps & { /** * `"drill"`: the card has no whole-server toggle. Clicking it opens the * server's tool list via `onCustomize` so the user can pick a specific tool. * * Use this in single-tool contexts such as a tool-execution page, where the * goal is to select one tool to run rather than to add an entire server's * tools to a configuration. Selecting the server is not meaningful in that * context; the card is a navigation step toward the tool. */ interaction: "drill"; onCustomize: () => void; onToggle?: never; }; export type McpServerCardProps = McpServerCardToggleProps | McpServerCardDrillProps; declare function McpServerCardImpl({ name, description, toolkitId, version, toolCount, selectedToolCount, selectionState, needsSetup, interaction, onSetup, onToggle, onCustomize, className, ...rest }: McpServerCardProps): React.JSX.Element; export declare const McpServerCard: React.MemoExoticComponent; export {}; //# sourceMappingURL=server-card.d.ts.map