/** 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;