export interface FetchedPage { url: string; title: string; markdown: string; text: string; fetchedAt: string; } export interface SearchResult { title: string; url: string; snippet: string; } export interface SearchOutcome { /** Which engine served the results — 'none' when every engine returned * no results (a genuine dry query), so a silent empty array is never * mistaken for a working engine. */ engine: string; results: SearchResult[]; } export declare class WebError extends Error { readonly status?: number | undefined; constructor(message: string, status?: number | undefined); } /** * Fetch a URL, strip chrome, and convert the main content to markdown. * Readability first (nav/ads/sidebars excluded); when the page is too short * or not article-shaped, falls back to the article/main/body heuristics. */ export declare function fetchUrl(url: string, maxChars?: number): Promise; export declare function searchWeb(query: string, maxResults?: number): Promise; //# sourceMappingURL=web.d.ts.map