import { __require } from "../../../_virtual/_rolldown/runtime.js";
import FederationRuntimeDependency from "./FederationRuntimeDependency.js";
import { moduleFederationPlugin } from "@module-federation/sdk";
import { Compiler } from "webpack";

//#region src/lib/container/runtime/FederationRuntimePlugin.d.ts
type ResolveFn = typeof __require.resolve;
declare function resolveRuntimePaths(implementation?: string, resolve?: ResolveFn): {
  runtimeToolsPath: string;
  bundlerRuntimePath: string;
  runtimePath: string;
};
declare class FederationRuntimePlugin {
  options?: moduleFederationPlugin.ModuleFederationPluginOptions;
  entryFilePath: string;
  bundlerRuntimePath: string;
  runtimePath: string;
  runtimeToolsPath: string;
  federationRuntimeDependency?: FederationRuntimeDependency;
  constructor(options?: moduleFederationPlugin.ModuleFederationPluginOptions);
  static getTemplate(compiler: Compiler, options: moduleFederationPlugin.ModuleFederationPluginOptions, bundlerRuntimePath?: string): string;
  getFilePath(compiler: Compiler): string;
  ensureFile(compiler: Compiler): void;
  getDependency(compiler: Compiler): FederationRuntimeDependency;
  prependEntry(compiler: Compiler): void;
  injectRuntime(compiler: Compiler): void;
  getRuntimeAlias(compiler: Compiler): string;
  setRuntimeAlias(compiler: Compiler): void;
  apply(compiler: Compiler): void;
}
//#endregion
export { FederationRuntimePlugin as default, resolveRuntimePaths };
//# sourceMappingURL=FederationRuntimePlugin.d.ts.map