import type { ContentProcessor } from "../../src/extensions/content/index.js"; type ContentMdxExtensionModule = { MdxContentProcessor: new () => ContentProcessor; }; /** * Start loading ext-mdx before the server accepts requests. Registration must * still happen after server start (bootstrap `reset()` clears the contract * registry), but with the module already loaded the post-start await in * `ensureBuiltinContentProcessor` resolves without an I/O gap, so no request * can observe a missing ContentProcessor contract in between. */ export declare function prefetchBuiltinContentProcessor(): void; /** * The CLI ships ext-mdx baked in so the compiled binary can render MDX/Markdown * pages out of the box. Library consumers (programmatic `startProductionServer`) * still opt in via `veryfront.config.ts` extensions. Bootstrap's * `setupAll` to `teardownAll` to `reset()` clears the contract registry, so this * must run *after* the server-start (or `getConfig`) call returns. We skip * registration when a user-provided extension already supplied the contract. * * The npm distribution declares @veryfront/ext-content-mdx as an *optional * peer* (see scripts/build/npm-package-metadata.ts), so a plain * `npm install veryfront` does not install it. Every server start calls this, * including projects with no .mdx or .md file at all, so a missing package must * not be fatal here. Leaving the contract unregistered defers the report to the * compile path, which throws the typed MISSING_EXTENSION_ERROR naming * @veryfront/ext-content-mdx only when content is actually rendered. * * `load` is a test seam and defaults to the real module loader. */ export declare function ensureBuiltinContentProcessor(load?: () => Promise): Promise; export {}; //# sourceMappingURL=ensure-content-processor.d.ts.map