import { ModuleFederationPlugin, TreeShakingSharedPlugin, PLUGIN_NAME } from '@module-federation/enhanced/rspack'; import { SSR_DIR, StatsAssetResource } from '../utils'; import type { moduleFederationPlugin } from '@module-federation/sdk'; import type { RsbuildPlugin, Rspack } from '@rsbuild/core'; type ModuleFederationOptions = moduleFederationPlugin.ModuleFederationPluginOptions; type RSBUILD_PLUGIN_OPTIONS = { target?: 'web' | 'node' | 'dual'; ssr?: boolean; ssrDir?: string; environment?: string; }; type ExposedAPIType = { options: { nodePlugin?: ModuleFederationPlugin; browserPlugin?: ModuleFederationPlugin; rspressSSGPlugin?: ModuleFederationPlugin; distOutputDir?: string; browserEnvironmentName?: string; nodeEnvironmentName?: string; }; assetResources: Record; isSSRConfig: typeof isSSRConfig; isRspressSSGConfig: typeof isRspressSSGConfig; }; export type { ModuleFederationOptions, ExposedAPIType }; declare const RSBUILD_PLUGIN_MODULE_FEDERATION_NAME = "rsbuild:module-federation-enhanced"; export { RSBUILD_PLUGIN_MODULE_FEDERATION_NAME, PLUGIN_NAME, SSR_DIR }; export declare function isMFFormat(bundlerConfig: Rspack.Configuration): boolean; declare const isSSRConfig: (bundlerConfigName?: string) => boolean; declare const isRspressSSGConfig: (bundlerConfigName?: string) => boolean; export declare const pluginModuleFederation: (moduleFederationOptions: ModuleFederationOptions, rsbuildOptions?: RSBUILD_PLUGIN_OPTIONS) => RsbuildPlugin; export { createModuleFederationConfig } from '@module-federation/sdk'; export { TreeShakingSharedPlugin };