import type { ModuleSource } from "@antelopejs/interface-core/config"; import type { ModuleCache } from "../module-cache"; import type { ModuleManifest } from "../module-manifest"; export interface LoadOptions { reload?: boolean; } export type ModuleLoader = (cache: ModuleCache, source: T, options?: LoadOptions) => Promise; export declare class DownloaderRegistry { private waiting; private knownTypes; register(type: string, loaderIdentifier: keyof T, loader: ModuleLoader): void; load(projectFolder: string, cache: ModuleCache, source: ModuleSource, options?: LoadOptions): Promise; getLoaderIdentifier(source: ModuleSource): any | undefined; }