export interface ProdHydrationModuleSelectionOptions { fs: { readDir(path: string): AsyncIterable<{ name: string; isFile: boolean; }>; }; projectDir: string; buildOutDir?: string; releaseId?: string; } /** Whether the release ID names an immutable artifact set rather than local source serving. */ export declare function hasImmutableReleaseHydrationRuntime(releaseId: string | undefined): releaseId is string; /** * Select the hydration runtime owned by the rendered artifact set. * * Non-release renders use the serving runtime. Release renders discover the * single content-addressed runtime baked into that immutable release. * Releases without any versioned runtime fall back to the serving runtime at * its unversioned rollout-stable path: hosted release file trees carry no * build output at all (the API-backed fs lists the absent dist directory as * empty), so failing closed here takes down every hosted release render, and * a content-addressed fallback URL 404s on peer pods mid-rollout. Only * ambiguity — multiple versioned runtimes — and uninspectable release * artifacts fail closed. */ export declare function resolveProdHydrationModulePath(options: ProdHydrationModuleSelectionOptions): Promise; //# sourceMappingURL=prod-runtime-selection.d.ts.map