import type { McpServerEntry } from "./types.js"; export type ShapeName = "standard" | "opencode" | "goose"; export interface StandardShapeOutput { command: string; args?: string[]; env?: Record; } export interface StandardHttpShapeOutput { type: "http"; url: string; headers?: Record; } export interface OpencodeLocalShapeOutput { type: "local"; command: string[]; env?: Record; enabled: boolean; } export interface OpencodeRemoteShapeOutput { type: "remote"; url: string; headers?: Record; enabled: boolean; } export type OpencodeShapeOutput = OpencodeLocalShapeOutput | OpencodeRemoteShapeOutput; export interface GooseStdioShapeOutput { type: "stdio"; cmd: string; args?: string[]; envs?: Record; } export interface GooseHttpShapeOutput { type: "http"; url: string; headers?: Record; } export type GooseShapeOutput = GooseStdioShapeOutput | GooseHttpShapeOutput; export type ShapeOutput = StandardShapeOutput | StandardHttpShapeOutput | OpencodeShapeOutput | GooseShapeOutput; export type ShapeTransformer = (entry: McpServerEntry) => ShapeOutput | undefined; export declare function standardShape(entry: McpServerEntry): ShapeOutput | undefined; export declare function opencodeShape(entry: McpServerEntry): OpencodeShapeOutput; export declare function gooseShape(entry: McpServerEntry): GooseShapeOutput | undefined; export declare function getShapeTransformer(shape: ShapeName): ShapeTransformer;