/**
* SEO indexability checker — determines if a page is crawlable and indexable.
*
* Checks:
* 1. X-Robots-Tag response header (noindex, nofollow, noarchive)
* 2. tag (noindex, nofollow)
* 3. Canonical URL (self-canonical vs cross-canonical)
* 4. rel="nofollow" on outbound links
* 5. hreflang tags (multilingual)
* 6. Open Graph completeness (og:title, og:description, og:image)
* 7. Structured data presence (JSON-LD)
* 8. Meta description
* 9. Title tag length (< 60 chars recommended)
* 10. URL structure (query params, fragments, excessive depth)
*/
import type { Page } from 'playwright';
export interface SeoIssue {
rule: string;
severity: 'critical' | 'warning' | 'info';
message: string;
value?: string;
}
export interface SeoCheckResult {
url: string;
isIndexable: boolean;
canonicalUrl?: string;
isSelfCanonical?: boolean;
hreflang: Record;
issues: SeoIssue[];
score: number;
checkedAt: string;
}
export declare function checkSeo(page: Page, url: string, responseHeaders?: Record): Promise;