import type { HTMLMetadata } from "../transforms/mdx/types.js"; import { type ConfiguredRouteDirectories } from "../release-assets/route-path.js"; import type { ReleaseAssetManifest } from "../release-assets/manifest-schema.js"; export interface InjectHTMLContentOptions { mode: string; slug: string; devPort?: number; /** Absolute path to the page file, used for 'use client' hydration */ pagePath?: string; /** Project root used to normalize absolute page paths in hydration data */ projectDir?: string; /** Whether the page has 'use client' directive */ isClientPage?: boolean; /** * Route params from the initial match, seeded into the 'use client' hydration * payload so full-HTML-document client pages hydrate with their params * instead of an empty object (issue #2741). Catch-all arrays are preserved; * the client runtime joins them (issue #2742). */ params?: Record; /** Whether page is embedded in Studio iframe */ studioEmbed?: boolean; /** Project ID for Studio communication */ projectId?: string; /** Page ID for Studio communication */ pageId?: string; /** CSP nonce */ nonce?: string; /** Deployment environment for hydration module selection */ environment?: "preview" | "production"; /** Whether the request is being served from a local project */ isLocalProject?: boolean; /** WebSocket URL for direct Yjs connection from the bridge */ wsUrl?: string; /** Yjs document GUID for the bridge to join the same room */ yjsGuid?: string; /** Pre-built import map JSON for ESM module resolution (injected into ) */ importMapJson?: string; /** Framework-generated project stylesheet for production shells */ projectStylesheetHref?: string; /** Request-scoped dependency snapshot used to version RSC module imports. */ dependencyPinningCacheKey?: string; /** Ready release asset manifest used to hydrate full HTML client pages */ releaseAssetManifest?: ReleaseAssetManifest | null; /** Production hydration runtime selected from the rendered artifact set */ prodHydrationModulePath?: string; /** Configured route directories used to map physical page paths to route keys */ directories?: ConfiguredRouteDirectories; } export declare function injectHTMLContent(template: string, content: string, metadata: HTMLMetadata, options: InjectHTMLContentOptions): string; //# sourceMappingURL=html-injection.d.ts.map