/**
 * web_search — keyword web search backed by DuckDuckGo's HTML endpoint.
 *
 * Free, no API key, no rate-limit signup. Returns up to N results as a
 * structured plain-text list (title, URL, snippet) the model can read and
 * then follow up with `web_fetch` for the full page.
 *
 * Why this exists: free models routinely hallucinate `web_search_exa` /
 * `google_search` tool calls. This gives them a real tool of the right shape
 * so the call succeeds.
 */
import type { Tool } from './types.js';
import { htmlToText } from '../html-parser.js';
interface SearchResult {
    title: string;
    url: string;
    snippet: string;
}
declare function decodeDdgRedirect(href: string): string;
declare function parseDdgLite(html: string, limit: number): SearchResult[];
export declare const WebSearchTool: Tool;
export declare const _internal: {
    parseDdgLite: typeof parseDdgLite;
    decodeDdgRedirect: typeof decodeDdgRedirect;
    htmlToText: typeof htmlToText;
};
export {};
