/** * Type definitions for the web scraper MCP server */ export interface ScrapedPage { url: string; title: string; content: string; metadata: PageMetadata; renderMethod: 'static' | 'javascript'; } export interface PageMetadata { description?: string; keywords?: string[]; author?: string; publishedDate?: string; language?: string; contentType: string; statusCode: number; finalUrl: string; wordCount: number; characterCount: number; loadTime?: number; screenshot?: string; } export interface ScraperOptions { followRedirects?: boolean; timeout?: number; customHeaders?: Record; includeImages?: boolean; includeLinks?: boolean; includeTables?: boolean; preserveFormatting?: boolean; useJavaScript?: boolean; waitForSelector?: string; waitTime?: number; takeScreenshot?: boolean; blockResources?: ('image' | 'stylesheet' | 'font' | 'media')[]; mainContentOnly?: boolean; } export interface ScrapeResult { success: boolean; page?: ScrapedPage; error?: string; } export interface ExtractedLinks { url: string; links: LinkInfo[]; totalLinks: number; renderMethod: 'static' | 'javascript'; } export interface LinkInfo { text: string; href: string; isExternal: boolean; title?: string; } export interface ExtractedImages { url: string; images: ImageInfo[]; totalImages: number; renderMethod: 'static' | 'javascript'; } export interface ImageInfo { src: string; alt?: string; title?: string; width?: string; height?: string; } export interface PDFOptions { format?: 'A4' | 'Letter' | 'Legal'; landscape?: boolean; printBackground?: boolean; } //# sourceMappingURL=types.d.ts.map