/** * connectionRefusals — the two arms of `mcpClient` refuse to be mixed, at * CONSTRUCTION, in words that name where the behaviour went. * * ── Why refuse rather than ignore ──────────────────────────────────────────── * `mcpClient({ connection })` hands over a client somebody else built, so this * library builds no transport on that arm — and every option consumed INSIDE a * transport therefore has nothing to act on. `retryOnThrottle` is the sharp * one: it is ON by default, it is consumed by `retryingFetch` around the * transport's `fetch`, and accepting it here would leave a caller holding an * option that NAMES a behaviour which no longer happens. A knob that lies about * what it does is worse than one that is absent, so these throw. * * The type union refuses the same combinations at compile time * (`McpConnectionOptions` declares each of them `?: undefined`). This is the * runtime half, and it is not redundant: excess-property checking does not * survive a spread, and JavaScript callers have no compiler at all. * * Pattern: pure guard. Role: Layer-3 tool integration. */ import type { McpClientOptions, McpConnectionOptions } from './types.js'; /** * Refuse a mixed or malformed options object before anything connects. * * @param opts what the caller passed, before any defaulting * @param name the client's logical name, so a multi-server app knows which one * @throws naming the two options that cannot travel together, or the member the * connection is missing */ export declare function refuseConflictingOptions(opts: McpClientOptions | McpConnectionOptions, name: string): void; //# sourceMappingURL=connectionRefusals.d.ts.map