/** * The document-relative path a URL is vendored at, or null for a URL this lane cannot mirror * (unparseable, or a path that escapes the tree). The query string is dropped — asset URLs do * not carry meaningful queries, and a `?` cannot survive as a same-file request path anyway. */ export declare function vendorPathFor(url: string): string | null; /** Where a BASE url's rewrite points: the same mapping, minus the appended 'index'. */ export declare function vendorBasePathFor(baseUrl: string): string | null; export interface VendorFailure { url: string; error: string; } export interface VendorResult { /** URL → document-relative vendor path, for every URL that is now on disk. */ entries: Map; failures: VendorFailure[]; /** How many came from the cache rather than the network. */ cacheHits: number; } export interface VendorOptions { urls: Iterable; cacheDir: string; payloadDir: string; fetchImpl?: typeof globalThis.fetch; log?: (message: string) => void; concurrency?: number; } /** Download (or copy from cache) every URL into the payload's vendor tree. */ export declare function vendorUrls(options: VendorOptions): Promise;