/** ProxyAgent 类型(undici 内置,Node 18+ 可直接 import;用 any 避免未声明依赖的 TS 错误) */ export type ProxyAgentType = any; /** 代理模式:system=系统代理, custom=自定义, direct=直连 */ export type ProxyMode = 'system' | 'custom' | 'direct'; /** 单分类代理配置 */ export interface ProxyCategoryConfig { mode: ProxyMode; /** mode='custom' 时的代理 URL */ url?: string; } /** 分类代理设置(LLM / MCP / Fetch 各自独立) */ export interface ProxySettings { llm: ProxyCategoryConfig; mcp: ProxyCategoryConfig; fetch: ProxyCategoryConfig; } /** 默认代理设置:全部分类走系统代理 */ export declare const DEFAULT_PROXY_SETTINGS: ProxySettings; /** * 根据分类代理配置解析代理 URL * * - `mode='system'`:自动检测系统代理(环境变量 + macOS scutil + Windows 注册表) * - `mode='custom'`:使用用户指定的代理 URL * - `mode='direct'`:不走代理,返回 undefined * * 返回代理 URL 字符串,需配合 createProxyDispatcher() 使用。 * 支持 http://、https://、socks4://、socks5:// 协议。 * * @param category 分类代理配置 * @param label 日志标签(如 'LLM', 'MCP', 'Fetch') * @returns 代理 URL 字符串,无代理时返回 undefined */ export declare function resolveProxyAgentForCategory(category?: ProxyCategoryConfig, label?: string): string | undefined; /** * 根据代理 URL 创建 undici ProxyAgent dispatcher * * Node.js 原生 fetch() 不支持 RequestInit.proxy 选项, * 需通过 dispatcher 传入 undici 的 ProxyAgent 来正确使用代理。 * * 使用动态 import('undici') 避免浏览器环境静态解析失败。 * 仅在传入 proxyUrl 时才创建 ProxyAgent,无代理时返回 undefined。 * * @param proxyUrl 代理 URL(如 http://127.0.0.1:7890),undefined 时不创建 * @returns ProxyAgent dispatcher 或 undefined */ export declare function createProxyDispatcher(proxyUrl?: string): Promise; /** * 获取分类代理的有效 URL(用于 axios 等 HTTP 客户端) * * @returns 代理 URL 字符串,无代理时返回 undefined */ export declare function resolveProxyUrlForCategory(category?: ProxyCategoryConfig): string | undefined; //# sourceMappingURL=proxy-agent.d.ts.map