import type { RuntimeAdapter } from "../../../platform/adapters/base.js"; type ModulePathCacheSave = (cacheDir: string) => Promise; export declare function drainModulePathCacheSaves(): Promise; export declare function setModulePathCacheSaveForTesting(save: ModulePathCacheSave): () => void; export interface PersistTransformedModuleInput { filePath: string; projectDir: string; tmpDir: string; transformedCode: string; localAdapter: RuntimeAdapter; moduleCache: Map; cacheKey: string; contentSourceId?: string; reactVersion?: string; dependencyPinningCacheKey?: string; moduleServerOrigin?: string; serverExternalPackages?: readonly string[]; /** Compile mode of `transformedCode`, kept in the artifact cache identity. */ dev?: boolean; /** Tenant-authored imports left unresolved in this module subtree. */ unresolvedSpecifiers?: readonly string[]; /** Exact graph-content-addressed path for a cycle-dependent artifact. */ cycleArtifactPath?: string; /** Delay cache visibility until the caller commits its full module graph. */ deferCachePublication?: (publication: () => Promise) => void; } /** Read unresolved-import evidence stored beside a transformed artifact. */ export declare function readPersistedUnresolvedSpecifiers(modulePath: string, localAdapter: RuntimeAdapter): Promise; /** * Whether transformed output exposes a default export, so a cycle-manifest * entry can re-export it. Covers esbuild's `export default …`, `… as default`, * and `export { default } from …` forms. */ export declare function transformedModuleHasDefaultExport(code: string): boolean; /** Write a transformed module artifact and register cache pointers. */ export declare function persistTransformedModule(input: PersistTransformedModuleInput): Promise; export {}; //# sourceMappingURL=module-persistence.d.ts.map