import { type EvoPackManifest } from "../pack/pack.ts"; import { type EvoRawFileSource } from "./registry.ts"; export declare const EVO_DISCOVERY_DEFAULT_MAX_FILE_BYTES: number; export declare const EVO_DISCOVERY_DEFAULT_MAX_PACK_BYTES: number; export declare const EVO_DISCOVERY_DEFAULT_MAX_PACK_FILES = 1000; export declare const EVO_DISCOVERY_DEFAULT_TIMEOUT_MS = 30000; export type EvoDiscoveryFetch = (url: string, init: RequestInit) => Promise; export interface EvoPackDiscoveryTransportOptions { fetch: EvoDiscoveryFetch; maxFileBytes?: number; maxPackBytes?: number; maxPackFiles?: number; timeoutMs?: number; } export interface EvoMaterializedPack { directory: string; manifest: EvoPackManifest; fileCount: number; totalBytes: number; } /** * Verify that an immutable locator's retrieval URL is derived from its stated * repository/gist revision. Unknown git hosting conventions fail closed. */ export declare function assertEvoRawFileSourceProvenance(value: unknown): EvoRawFileSource; /** Bounded, redirect-free raw-file retrieval over an explicitly injected fetch implementation. */ export declare class EvoPackDiscoveryTransport { private readonly fetchImpl; private readonly maxFileBytes; private readonly maxPackBytes; private readonly maxPackFiles; private readonly timeoutMs; constructor(options: EvoPackDiscoveryTransportOptions); private readBytes; readRegistryIndex(source: EvoRawFileSource, signal?: AbortSignal): Promise; fetchPackManifest(source: EvoRawFileSource, signal?: AbortSignal): Promise; /** * Materialize the exact v1 pack file set needed by the existing importer. * The destination must not exist and is removed on every failure. */ materializePack(options: { source: EvoRawFileSource; expectedManifest: EvoPackManifest; destination: string; signal?: AbortSignal; }): Promise; } //# sourceMappingURL=transport.d.ts.map