@module-federation/enhanced
Version:
This package provides enhanced features for module federation.
84 lines (83 loc) • 3.7 kB
TypeScript
import * as webpack$1 from "webpack";
import { Compilation, WebpackOptionsNormalized } from "webpack";
import { CodeGenerationContext, CodeGenerationResult, LibIdentOptions, NeedBuildContext, WebpackError } from "webpack/lib/Module";
import { ResolverWithOptions as ResolverWithOptions$1 } from "webpack/lib/ResolverFactory";
import { InputFileSystem as InputFileSystem$1 } from "webpack/lib/FileSystemInfo";
import { RequestShortener as RequestShortener$1 } from "webpack/lib/RuntimeModule";
import { ObjectDeserializerContext as ObjectDeserializerContext$1 } from "webpack/lib/serialization/ObjectMiddleware";
//#region src/lib/container/RemoteModule.d.ts
declare const Module$1: typeof webpack$1.Module;
declare class RemoteModule extends Module$1 {
private _identifier;
request: string;
externalRequests: string[];
internalRequest: string;
shareScope: string | string[];
/**
* @param {string} request request string
* @param {string[]} externalRequests list of external requests to containers
* @param {string} internalRequest name of exposed module in container
* @param {string|string[]} shareScope scope in which modules are shared
*/
constructor(request: string, externalRequests: string[], internalRequest: string, shareScope: string | string[]);
/**
* @returns {string} a unique identifier of the module
*/
identifier(): string;
/**
* @param {RequestShortener} requestShortener the request shortener
* @returns {string} a user readable identifier of the module
*/
readableIdentifier(requestShortener: RequestShortener$1): string;
/**
* @param {LibIdentOptions} options options
* @returns {string | null} an identifier for library inclusion
*/
libIdent(options: LibIdentOptions): string | null;
/**
* @param {NeedBuildContext} context context info
* @param {function((WebpackError | null)=, boolean=): void} callback callback function, returns true, if the module needs a rebuild
* @returns {void}
*/
needBuild(context: NeedBuildContext, callback: (err: WebpackError | null, needsRebuild?: boolean) => void): void;
/**
* @param {WebpackOptions} options webpack options
* @param {Compilation} compilation the compilation
* @param {ResolverWithOptions} resolver the resolver
* @param {InputFileSystem} fs the file system
* @param {function(WebpackError=): void} callback callback function
* @returns {void}
*/
build(options: WebpackOptionsNormalized, compilation: Compilation, resolver: ResolverWithOptions$1, fs: InputFileSystem$1, callback: (err?: WebpackError | undefined) => void): void;
/**
* @param {string=} type the source type for which the size should be estimated
* @returns {number} the estimated size of the module (must be non-zero)
*/
size(type?: string): number;
/**
* @returns {Set<string>} types available (do not mutate)
*/
getSourceTypes(): Set<string>;
/**
* @returns {Set<string>} types available (do not mutate)
*/
getSourceBasicTypes(): Set<string>;
/**
* @returns {string | null} absolute path which should be used for condition matching (usually the resource path)
*/
nameForCondition(): string | null;
/**
* @param {CodeGenerationContext} context context for code generation
* @returns {CodeGenerationResult} result
*/
codeGeneration(context: CodeGenerationContext): CodeGenerationResult;
serialize(context: any): void;
/**
* @param {ObjectDeserializerContext} context context
* @returns {RemoteModule} deserialized module
*/
static deserialize(context: ObjectDeserializerContext$1): RemoteModule;
}
//#endregion
export { RemoteModule as default };
//# sourceMappingURL=RemoteModule.d.ts.map