import type { Lookup } from "../net/ssrf.ts"; export type FetchMode = "readable" | "raw"; export interface RegisteredToolNames { webSearch?: string; fetchContent?: string; } export interface FetchOptions { timeoutMs?: number; prompt?: string; mode?: FetchMode; toolNames?: RegisteredToolNames; proxy?: string; lookup?: Lookup; } export interface FetchResult { url: string; title: string; content: string; error: string | null; mimeType?: string; status?: number; } // Compatibility aliases while Provider adapters migrate to domain terminology. export type ExtractOptions = FetchOptions; export type ExtractedContent = FetchResult;