export interface ClientModuleScope { output: Record void>; server: Record Promise>; props: Readonly>; refs: Record; } const moduleCache = new Map>(); export async function loadClientFunctions( url: string, scope: ClientModuleScope, ): Promise unknown>> { const module = await (moduleCache.get(url) ?? (() => { const promise = import(/* @vite-ignore */ url); moduleCache.set(url, promise); return promise; })()); if (typeof module.bindClientScope === "function") return module.bindClientScope(scope); return module.__wrnexusClientFunctions ?? {}; } export function invalidateClientModule(url: string): void { moduleCache.delete(url); }