vite-plugin-zephyr
Version:
Vite plugin for Zephyr
38 lines • 1.87 kB
text/typescript
import type { ModuleFederationManifestOptions, ModuleFederationOptions } from './ensure_runtime_plugin.mjs';
/** The established single-container snapshot shape. */
export interface ViteLegacyModuleFederationConfig {
name: string;
filename: string;
exposes?: Record<string, string>;
remotes?: Record<string, string>;
shared?: Record<string, unknown>;
runtimePlugins?: string[];
manifest?: boolean | ModuleFederationManifestOptions;
}
/** Serializable dashboard metadata for one independently addressable Vite container. */
export interface ViteModuleFederationBuildMetadata {
name?: string;
remote?: string;
mf_manifest?: string;
library_type?: string;
exposes?: ModuleFederationOptions['exposes'];
shared?: ModuleFederationOptions['shared'];
}
export interface ViteModuleFederationPublicationMetadata {
mfConfig?: ViteLegacyModuleFederationConfig;
mfConfigs?: ModuleFederationOptions[];
federation?: ViteModuleFederationBuildMetadata[];
}
/**
* A Vite MF container is publicly identified by its `name` and emitted entry `filename`.
* Two configs that share either identity describe the same container.
*/
export declare function getConfigIdentities(config: ModuleFederationOptions): string[];
/**
* Snapshot metadata must include every configured Vite container. Exact duplicate plugin
* wrappers are harmless, while divergent configs with one public identity are ambiguous
* and must fail before a snapshot chooses one arbitrarily.
*/
export declare function mergeViteModuleFederationConfigs(configLists: readonly (readonly ModuleFederationOptions[] | undefined)[]): ModuleFederationOptions[];
export declare function createViteModuleFederationPublicationMetadata(configs: readonly ModuleFederationOptions[]): ViteModuleFederationPublicationMetadata;
//# sourceMappingURL=federation-metadata.d.mts.map