import { z } from 'zod'; import { ToolBubble } from '../../types/tool-bubble-class.js'; import type { BubbleContext } from '../../types/bubble.js'; import { CredentialType, type BubbleName } from '@bubblelab/shared-schemas'; declare const WebScrapeToolParamsSchema: z.ZodObject<{ url: z.ZodString; format: z.ZodDefault>; onlyMainContent: z.ZodDefault; credentials: z.ZodOptional, z.ZodString>>; }, "strip", z.ZodTypeAny, { format: "html" | "markdown"; url: string; onlyMainContent: boolean; credentials?: Partial> | undefined; }, { url: string; format?: "html" | "markdown" | undefined; credentials?: Partial> | undefined; onlyMainContent?: boolean | undefined; }>; declare const WebScrapeToolResultSchema: z.ZodObject<{ content: z.ZodString; title: z.ZodString; url: z.ZodString; format: z.ZodString; success: z.ZodBoolean; error: z.ZodString; creditsUsed: z.ZodNumber; metadata: z.ZodOptional; loadTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { statusCode?: number | undefined; loadTime?: number | undefined; }, { statusCode?: number | undefined; loadTime?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { format: string; title: string; error: string; success: boolean; content: string; url: string; creditsUsed: number; metadata?: { statusCode?: number | undefined; loadTime?: number | undefined; } | undefined; }, { format: string; title: string; error: string; success: boolean; content: string; url: string; creditsUsed: number; metadata?: { statusCode?: number | undefined; loadTime?: number | undefined; } | undefined; }>; type WebScrapeToolParams = z.output; type WebScrapeToolResult = z.output; type WebScrapeToolParamsInput = z.input; export declare class WebScrapeTool extends ToolBubble { static readonly bubbleName: BubbleName; static readonly schema: z.ZodObject<{ url: z.ZodString; format: z.ZodDefault>; onlyMainContent: z.ZodDefault; credentials: z.ZodOptional, z.ZodString>>; }, "strip", z.ZodTypeAny, { format: "html" | "markdown"; url: string; onlyMainContent: boolean; credentials?: Partial> | undefined; }, { url: string; format?: "html" | "markdown" | undefined; credentials?: Partial> | undefined; onlyMainContent?: boolean | undefined; }>; static readonly resultSchema: z.ZodObject<{ content: z.ZodString; title: z.ZodString; url: z.ZodString; format: z.ZodString; success: z.ZodBoolean; error: z.ZodString; creditsUsed: z.ZodNumber; metadata: z.ZodOptional; loadTime: z.ZodOptional; }, "strip", z.ZodTypeAny, { statusCode?: number | undefined; loadTime?: number | undefined; }, { statusCode?: number | undefined; loadTime?: number | undefined; }>>; }, "strip", z.ZodTypeAny, { format: string; title: string; error: string; success: boolean; content: string; url: string; creditsUsed: number; metadata?: { statusCode?: number | undefined; loadTime?: number | undefined; } | undefined; }, { format: string; title: string; error: string; success: boolean; content: string; url: string; creditsUsed: number; metadata?: { statusCode?: number | undefined; loadTime?: number | undefined; } | undefined; }>; static readonly shortDescription = "Scrapes content from a single web page. Useful after web-search-tool to get the full content of a page. Also useful if you need to understand a site's structure or content."; static readonly longDescription = "\n A simple and powerful web scraping tool that extracts content from any web page.\n \n Features:\n - Clean content extraction with main content focus\n - Multiple format support (markdown, html, rawHtml)\n - Fast and reliable using Firecrawl\n - Handles JavaScript-rendered pages\n - Optional browser automation for authentication flows\n - Custom headers support for session-based scraping\n - Requires FIRECRAWL_API_KEY credential\n \n Basic use cases:\n - Extract article content for analysis\n - Scrape product information from e-commerce sites\n - Get clean text from documentation pages\n - Extract data from any public web page\n \n Advanced use cases (with actions):\n - Login and scrape protected content\n - Navigate multi-step authentication flows\n - Interact with dynamic content requiring clicks/scrolls\n - Execute custom JavaScript for complex scenarios\n "; static readonly alias = "scrape"; static readonly type = "tool"; constructor(params?: WebScrapeToolParamsInput, context?: BubbleContext); performAction(): Promise; } export {}; //# sourceMappingURL=web-scrape-tool.d.ts.map