/** Viewfly 开发态 HMR:wire + createNode capture;按 `hmrKey` 登记实例;热更时 bump flush、同步壳、`destroy` + `markAsDirtied`。 */ export interface ViewflyHmrAppLike { render(): unknown; destroy(): void; mount(container: unknown): unknown; } /** Vite 会给 `import.meta.url` 加 `?t=`,不规范化则 wire / accept / 实例 key 不一致。 */ export declare function canonicalHmrModuleUrl(url: string): string; /** * 包装应用实例的 `mount`:同一容器再次 mount 前先 `destroy` 旧实例(HMR 重跑入口时避免叠两套 UI)。 * 不在 ESM 命名空间上改 `createApp`,由入口 AST 在调用 `createApp` 后注入本函数。 */ export declare function patchApplicationMountForHmr(app: ViewflyHmrAppLike): void; /** * 须在任意 `` 渲染之前调用一次:劫持 `JSXNodeFactory.createNode`,对带 `__vfHmrKey` 的组件 type 包一层以采集实例。 */ export declare function installViewflyHmrCreateNodePatch(): void; /** 挂载后注册 app,供 `viewflyHmrAcceptSelf` 里 `render()` 刷帧。 */ export declare function registerViewflyHmrApp(getter: () => ViewflyHmrAppLike | null | undefined): void; /** * 对导出函数包一层稳定引用;路由/根组件须使用该对象上的属性。 */ export declare function wireViewflyHmrModule(moduleUrl: string, exportsObj: Record): void; /** * 由插件注入:`import.meta.hot.accept((mod) => ...)`。 */ export declare function viewflyHmrAcceptSelf(moduleUrl: string, mod?: Record): void;