export interface ExtractionResult { title: string; content: string; textContent: string; url: string; extractedAt: string; wordCount: number; byline: string | null; excerpt: string | null; siteName: string | null; } export interface FetchResult { html: string; finalUrl: string; } export interface ExtractOptions { timeoutMs?: number; maxContentLength?: number; } /** Checks whether a URL string has a valid http/https scheme. */ export declare function isValidUrl(url: string): boolean; /** * Returns true if an IP address is private, loopback, link-local, * or otherwise reserved. */ export declare function isPrivateOrReservedIp(address: string, family?: number): boolean; /** * Returns true if the hostname matches a private, loopback, link-local, * or otherwise reserved IP pattern. Does not perform DNS resolution. */ export declare function isPrivateOrReservedHost(hostname: string): boolean; export declare function fetchHtml(url: string, options?: ExtractOptions): Promise; export declare function extractArticle(html: string, url: string): ExtractionResult | null; export declare function extractFromUrl(url: string, options?: ExtractOptions): Promise; //# sourceMappingURL=url-extractor.d.ts.map