UNPKG

everything-dev

Version:

A consolidated product package for building Module Federation apps with oRPC APIs.

67 lines • 2.81 kB
import { BosConfig } from "../../types.cjs"; import { IntegrityRegistry } from "../deploy/integrity.cjs"; import { createInstance } from "@module-federation/enhanced/runtime"; //#region src/services/federation/service.d.ts type FederationInstance = ReturnType<typeof createInstance>; declare function patchManifestFetchForSsrPublicPath(mf: FederationInstance): void; declare function installIntegrityFetchHook(mf: FederationInstance, registry: IntegrityRegistry, options?: { cacheDir?: string; }): void; declare function getFederationInstance(): FederationInstance; declare function registerRemote(opts: { name: string; entry: string; type?: "manifest" | "script"; }): Promise<void>; declare function loadRemoteModule<T>(specifier: string, options?: { loadFactory?: boolean; from?: "build" | "runtime"; }): Promise<T>; declare function ensureNodeRuntimePlugin(): Promise<void>; interface FederationCompatRemote { role: string; url: string; reachable: boolean; pluginVersion: string | null; ok: boolean; reason?: string; } interface FederationCompatReport { ok: boolean; hostVersion: string | null; hostReachable: boolean; hostReason?: string; remotes: FederationCompatRemote[]; } declare function satisfiesConstraint(version: string, constraint: string): boolean; interface UiCompositionSlot { slot: string; url: string; reachable: boolean; ok: boolean; reason?: string; } interface UiCompositionReport { ok: boolean; slots: UiCompositionSlot[]; } /** * The UI composition compat check (#546) — mf check's mirror of the host's * boot guard. The core UI remote is the composition's shared-singleton * provider; plugin UI remotes are consumers. Any singleton named by two or * more UI manifests at different versions fails the composition at * `mf.loadRemote` with the federation runtime's cryptic negotiation error — * this names the slots and versions instead. Server remotes (api/auth) are * intentionally out of scope: the host-side `checkFederationCompat` covers * them against the host's own core map. */ declare function checkUiCompositionCompat(bosConfig: BosConfig | null, opts?: { timeoutMs?: number; }): Promise<UiCompositionReport>; declare function checkFederationCompat(bosConfig: BosConfig | null, opts?: { timeoutMs?: number; }): Promise<FederationCompatReport>; declare function loadBosConfigForMfCheck(configPath: string): BosConfig; //#endregion export { FederationCompatRemote, FederationCompatReport, UiCompositionReport, UiCompositionSlot, checkFederationCompat, checkUiCompositionCompat, ensureNodeRuntimePlugin, getFederationInstance, installIntegrityFetchHook, loadBosConfigForMfCheck, loadRemoteModule, patchManifestFetchForSsrPublicPath, registerRemote, satisfiesConstraint }; //# sourceMappingURL=service.d.cts.map