import { type ExtractedPage } from "../../src/onboard/extract.ts"; import type { VisualHints } from "../../src/onboard/brief.ts"; import { type HarvestDiscovery, type HarvestExclusion } from "../../src/onboard/harvest-inventory.ts"; export type CrawlResult = { startUrl: string; pages: ExtractedPage[]; warnings: string[]; engine: "fetch" | "playwright"; hints?: VisualHints; stills?: string[]; exclusions: HarvestExclusion[]; unvisited: string[]; }; export declare function enqueue(queue: string[], seen: Set, href: string, startUrl: string, discovery?: Map, meta?: HarvestDiscovery): void; export declare function sitemapUrls(startUrl: string, warnings: string[]): Promise; type Checkpoint = { version: 2; start: string; pages: ExtractedPage[]; queue: string[]; visited: string[]; seen: string[]; warnings: string[]; stills: string[]; hints?: VisualHints; exclusions?: HarvestExclusion[]; discovery?: [string, HarvestDiscovery][]; }; export declare function persistCheckpoint(path: string | undefined, payload: Checkpoint): void; /** * Fetch-based crawl. Optional maxPages is an emergency abort only (undefined = unbounded). * The queue visits home / about / work before legal and shop. */ export declare function crawlSite(startUrl: string, maxPages?: number, checkpointPath?: string, fresh?: boolean): Promise; export {};