import type { LinkCheckResult, RuleInput } from '../types.js'; export type LinkCheckOptions = { scope?: 'internal' | 'external' | 'all'; timeout?: number; ignorePatterns?: RegExp[]; maxConcurrency?: number; userAgent?: string; /** Severity for external link failures (default: warn) */ externalSeverity?: 'error' | 'warning'; }; export type LinkCheckDetail = { url: string; status: number; sourceSelector: string; type: 'internal' | 'external'; }; export declare const extractLinksForTest: typeof extractLinks; export declare const runConcurrentForTest: typeof runConcurrent; /** * Extract all anchor hrefs from the page HTML. */ declare function extractLinks(html: string, baseUrl: string): { href: string; absolute: string; selector: string; type: 'internal' | 'external'; }[]; /** * Run URLs in limited concurrency batches. */ declare function runConcurrent(items: T[], fn: (item: T) => Promise, concurrency: number): Promise; /** * Checks all links on the page for broken URLs (4xx/5xx/network errors). * * Pass: no broken links found within the specified scope * Fail: any internal broken link (or external if scope includes external) * Warn: external broken links when scope is 'internal' (advisory) * * Default scope is 'internal' — external checks require opting in. */ export declare function checkBrokenLinks(input: RuleInput, options?: LinkCheckOptions): Promise; export {}; //# sourceMappingURL=broken-links.d.ts.map