import { moduleFederationPlugin } from "@module-federation/sdk";
import webpack from "webpack";
import RuntimeGlobals from "webpack/lib/RuntimeGlobals";
import { init } from "@module-federation/runtime-tools";

//#region src/lib/container/runtime/utils.d.ts
type Remotes = Parameters<typeof init>[0]['remotes'];
interface NormalizedRuntimeInitOptionsWithOutShared {
  name: string;
  remotes: Array<Remotes[0] & {
    externalType: moduleFederationPlugin.ExternalsType;
  }>;
}
type EntryStaticNormalized = Awaited<ReturnType<Extract<webpack.WebpackOptionsNormalized['entry'], () => any>>>;
interface ModifyEntryOptions {
  compiler: webpack.Compiler;
  prependEntry?: (entry: EntryStaticNormalized) => void;
  staticEntry?: EntryStaticNormalized;
}
declare function getFederationGlobalScope(runtimeGlobals: typeof RuntimeGlobals): string;
declare function normalizeRuntimeInitOptionsWithOutShared(options: moduleFederationPlugin.ModuleFederationPluginOptions): NormalizedRuntimeInitOptionsWithOutShared;
declare function modifyEntry(options: ModifyEntryOptions): void;
declare function createHash(contents: string): string;
declare const normalizeToPosixPath: (p: string) => string;
//#endregion
export { NormalizedRuntimeInitOptionsWithOutShared, createHash, getFederationGlobalScope, modifyEntry, normalizeRuntimeInitOptionsWithOutShared, normalizeToPosixPath };
//# sourceMappingURL=utils.d.ts.map