import type { FileSystem } from "../../../platform/compat/fs.js"; import { injectContext } from "../../../observability/tracing/otlp-setup.js"; import { transformToESM } from "../../../transforms/esm/index.js"; import type { CrossProjectImport } from "../../../transforms/esm/import-parser.js"; import { rendererLogger as logger } from "../../../utils/index.js"; import type { SSRModuleLoaderOptions } from "./types.js"; interface CrossProjectImportCache { hashContentAsync(content: string): Promise; getTempPath(filePath: string, contentHash?: string): Promise; getFs(): FileSystem; } interface TransformCrossProjectImportFlowOptions { crossProjectImport: CrossProjectImport; options: Pick; cache: CrossProjectImportCache; withTransformCapacity: (syntheticFilePath: string, operation: () => Promise) => Promise; fetchImpl?: typeof fetch; transformToESMImpl?: typeof transformToESM; injectContextImpl?: typeof injectContext; loggerImpl?: Pick; fetchTimeoutMs?: number; } interface CrossProjectImportCacheKeyOptions { specifier: string; projectId: string; reactVersion?: string; registryBaseUrl: string; moduleServerOrigin?: string; dependencyPinningCacheKey?: string; } export declare function buildCrossProjectImportCacheKey(options: CrossProjectImportCacheKeyOptions): string; export declare function transformCrossProjectImportFlow(flowOptions: TransformCrossProjectImportFlowOptions): Promise; export {}; //# sourceMappingURL=cross-project-import-loader.d.ts.map