import type { PomLintRule } from "./types.js"; /** * A page created by name must be bound by a value import, not a type-only one. * * ```ts * // Reported * import type { CartPage } from "../cart/cart-page.ts"; * await this.create("CartPage"); * * // Expected * import { CartPage } from "../cart/cart-page.ts"; * await this.create("CartPage"); * ``` * * With no page registry, `create("CartPage")` resolves the name by reading the * *calling file's own source* for an import that binds it. On the cloud runner * that file is the compiled `.js`, where a type-only import has been erased: * the specifier is gone and the call throws `Unknown page`. Neither `tsc` nor * the playground (which executes the `.ts`, import still present) can catch * it — only a cloud run does, which is why this is an `error`. * * The check mirrors the runtime lookup in `pageModuleResolution.ts` exactly: * a named import matches on the *imported* name (so `import type { CartPage * as Other }` still resolves `"CartPage"`), a default import matches on its * local name, the first matching import wins, and imports from bare package * specifiers are never followed — a type-only one of those fails identically * on every platform, loudly and on the first run, so it is not reported. */ export declare const requireValueImportForCreatedPageRule: PomLintRule; //# sourceMappingURL=requireValueImportForCreatedPage.d.ts.map