import * as z from "zod/v4"; import { OpenEnum } from "../types/enums.js"; import { AnthropicCacheControlDirective, AnthropicCacheControlDirective$Outbound } from "./anthropiccachecontroldirective.js"; /** * Reasoning effort level for panelist and analyst inner calls. */ export declare const FusionServerToolConfigEffort: { readonly Max: "max"; readonly Xhigh: "xhigh"; readonly High: "high"; readonly Medium: "medium"; readonly Low: "low"; readonly Minimal: "minimal"; readonly None: "none"; }; /** * Reasoning effort level for panelist and analyst inner calls. */ export type FusionServerToolConfigEffort = OpenEnum; /** * Reasoning configuration forwarded to panelist and analyst inner calls. Use this to control reasoning effort and token budget for models that support extended thinking. */ export type FusionServerToolConfigReasoning = { /** * Reasoning effort level for panelist and analyst inner calls. */ effort?: FusionServerToolConfigEffort | undefined; /** * Maximum number of reasoning tokens each panelist and analyst model may use. Helps bound cost when models allocate too much budget to chain-of-thought. */ maxTokens?: number | undefined; }; export type FusionServerToolConfigTool = { /** * Optional configuration forwarded as the tool's `parameters` object. */ parameters?: { [k: string]: any; } | undefined; /** * Server tool type identifier (e.g. "openrouter:web_search", "openrouter:web_fetch"). */ type: string; }; /** * Configuration for the openrouter:fusion server tool. */ export type FusionServerToolConfig = { /** * Slugs of models to run in parallel as the analysis panel. Each model receives the user prompt with openrouter:web_search and openrouter:web_fetch enabled, then an analyst model summarizes the collective output into structured analysis JSON. Capped at 8 models to bound cost amplification. Defaults to the Quality preset from /labs/fusion. */ analysisModels?: Array | undefined; /** * Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. */ cacheControl?: AnthropicCacheControlDirective | undefined; /** * Maximum number of output tokens (including reasoning tokens) each panelist and the analyst model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. Defaults to 16000 when omitted. */ maxCompletionTokens?: number | undefined; /** * Maximum number of tool-calling steps each panelist (analysis model) and the analyst model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 4. Capped at 16. */ maxToolCalls?: number | undefined; /** * Slug of the analyst model that produces the structured analysis JSON. Defaults to the model used in the outer API request. */ model?: string | undefined; /** * Reasoning configuration forwarded to panelist and analyst inner calls. Use this to control reasoning effort and token budget for models that support extended thinking. */ reasoning?: FusionServerToolConfigReasoning | undefined; /** * Temperature forwarded to panelist inner calls. The analyst always runs at temperature 0 regardless of this value. When omitted, the provider's default applies. */ temperature?: number | undefined; /** * Server tools available to panelist and analyst inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only). */ tools?: Array | undefined; }; /** @internal */ export declare const FusionServerToolConfigEffort$outboundSchema: z.ZodType; /** @internal */ export type FusionServerToolConfigReasoning$Outbound = { effort?: string | undefined; max_tokens?: number | undefined; }; /** @internal */ export declare const FusionServerToolConfigReasoning$outboundSchema: z.ZodType; export declare function fusionServerToolConfigReasoningToJSON(fusionServerToolConfigReasoning: FusionServerToolConfigReasoning): string; /** @internal */ export type FusionServerToolConfigTool$Outbound = { parameters?: { [k: string]: any; } | undefined; type: string; }; /** @internal */ export declare const FusionServerToolConfigTool$outboundSchema: z.ZodType; export declare function fusionServerToolConfigToolToJSON(fusionServerToolConfigTool: FusionServerToolConfigTool): string; /** @internal */ export type FusionServerToolConfig$Outbound = { analysis_models?: Array | undefined; cache_control?: AnthropicCacheControlDirective$Outbound | undefined; max_completion_tokens?: number | undefined; max_tool_calls?: number | undefined; model?: string | undefined; reasoning?: FusionServerToolConfigReasoning$Outbound | undefined; temperature?: number | undefined; tools?: Array | undefined; }; /** @internal */ export declare const FusionServerToolConfig$outboundSchema: z.ZodType; export declare function fusionServerToolConfigToJSON(fusionServerToolConfig: FusionServerToolConfig): string; //# sourceMappingURL=fusionservertoolconfig.d.ts.map