/** * Connectivity probe for configured proxies: exercises the real dispatcher * (CONNECT tunnel / socks handshake) against a lightweight endpoint without * consuming any model quota. * * Default endpoint is Cloudflare's `cdn-cgi/trace`, whose body contains an * `ip=` line — proof the tunnel terminated at a working egress. Tests inject * `endpoint` + `fetchImpl` to stay fully offline. */ export interface ProbeResult { ok: boolean; latencyMs: number; detail: string; } export interface ProbeOptions { /** Trace-style endpoint; body must contain "ip=" on success. */ endpoint?: string; timeoutMs?: number; /** Test seam: override undici's fetch. */ fetchImpl?: (url: string, init?: Record) => Promise<{ ok: boolean; status: number; text(): Promise; }>; } export declare const DEFAULT_PROBE_ENDPOINT = "https://1.1.1.1/cdn-cgi/trace"; export declare function probeProxy(proxyUrl: string, opts?: ProbeOptions): Promise; /** Log-friendly label; never leaks credentials. */ export declare function describeProbeTarget(proxyUrl: string): string; //# sourceMappingURL=probe.d.ts.map