/** * OpenRouter provider-routing preferences. * * OpenRouter lets the caller bias which upstream provider its router * picks for a given model — useful for cost, latency, geography, or * privacy reasons. The shape we send in the request body's `provider` * field follows the OpenRouter spec * (https://openrouter.ai/docs#provider-routing): * * { * "order": ["DeepInfra", "Together"], // try first in order * "allow_fallbacks": true, // fall back to others if order fails * "ignore": ["OpenAI"], // never use these * "data_collection": "deny" | "allow", // privacy gate * "require_parameters": true, // strict spec compliance * } * * We store the user's preferences in `conf` so they persist across CLI * launches. Empty / unset means "let OpenRouter route freely". */ export interface OpenRouterPreferences { order?: string[]; allow_fallbacks?: boolean; ignore?: string[]; data_collection?: 'allow' | 'deny'; require_parameters?: boolean; } /** * Return the user's stored preferences, or null if none set. Returning * null (vs empty object) lets `agentChat` omit the `provider` field * entirely — OpenRouter is happier with no field than with an empty one. */ export declare function readOpenRouterPreferences(): OpenRouterPreferences | null; export declare function writeOpenRouterPreferences(prefs: OpenRouterPreferences | null): void; /** Render preferences for `/openrouter` command output. */ export declare function formatOpenRouterPreferences(prefs: OpenRouterPreferences | null): string;