import type { ToolResult } from "../../types.js"; import type { OutputSelection, ResponsePart } from "../output-selection.js"; export { isTlsCertNameError } from "./retry-policy.js"; export declare function isLoopbackHost(hostname: string): boolean; export declare function loopbackUrlCandidates(url: string): string[]; interface FetchOptions extends OutputSelection { method?: string | undefined; body?: string | undefined; headers?: Record | undefined; maxBytes?: number | undefined; iOwnThis?: boolean | undefined; retries?: number | undefined; timeoutMs?: number | undefined; responseMode?: "readable" | "raw" | undefined; responsePart?: ResponsePart | undefined; /** * Forward credentials across an origin-changing redirect. Disabled by * default so an in-scope endpoint cannot leak supplied auth to another host. */ forwardSensitiveHeaders?: boolean | undefined; insecureTls?: boolean | undefined; signal?: AbortSignal | undefined; authorizeHop?: ((url: string, resolvedAddresses: string[]) => Promise<{ allowed: boolean; reason: string; }> | { allowed: boolean; reason: string; }) | undefined; } export declare function httpFetch(url: string, options?: FetchOptions): Promise;