import { z } from "zod";
import type { AgentTool } from "@prestyj/agent";
/**
 * Block requests to private/internal network addresses to prevent SSRF.
 * Checks the hostname against known private IP ranges and reserved domains.
 */
export declare function isBlockedUrl(urlString: string): boolean;
export declare function htmlToCleanText(html: string): string;
type LlmsCandidateKind = "llms" | "llms-full" | "llms-ctx" | "page-md";
interface LlmsCandidate {
    url: string;
    label: string;
    kind: LlmsCandidateKind;
    priority: number;
}
export declare function buildLlmsCandidates(url: string, maxLength: number): LlmsCandidate[];
export declare function createWebFetchTool(): AgentTool<typeof parameters>;
declare const parameters: z.ZodObject<{
    url: z.ZodOptional<z.ZodString>;
    urls: z.ZodOptional<z.ZodArray<z.ZodString>>;
    max_length: z.ZodOptional<z.ZodNumber>;
    format: z.ZodOptional<z.ZodEnum<{
        text: "text";
        html: "html";
        markdown: "markdown";
    }>>;
    prefer_llms_txt: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export {};
//# sourceMappingURL=web-fetch.d.ts.map