import { ConsumeOptions } from "@module-federation/sdk"; import { Compilation } from "webpack"; import { InputFileSystem } from "webpack/lib/util/fs"; //#region src/lib/sharing/utils.d.ts /** * @see https://docs.npmjs.com/cli/v7/configuring-npm/package-json#urls-as-dependencies * @param {string} versionDesc version to be normalized * @returns {string} normalized version */ declare function normalizeVersion(versionDesc: string): string; /** @typedef {{ data: Record, path: string }} DescriptionFile */ interface DescriptionFile { data: Record; path: string; } /** * * @param {InputFileSystem} fs file system * @param {string} directory directory to start looking into * @param {string[]} descriptionFiles possible description filenames * @param {function((Error | null)=, {data?: DescriptionFile, path?: string}=, (checkedDescriptionFilePaths: string[])=): void} callback callback * @param {function({data: DescriptionFile}=): boolean} satisfiesDescriptionFileData file data compliance check * @param {Set} [checkedFilePaths] optional set to track checked file paths */ declare function getDescriptionFile(fs: InputFileSystem, directory: string, descriptionFiles: string[], callback: (err: Error | null, data?: DescriptionFile, checkedDescriptionFilePaths?: string[]) => void, satisfiesDescriptionFileData?: (data?: DescriptionFile) => boolean, checkedFilePaths?: Set): void; /** * Get required version from description file * @param {Record} data - The data object * @param {string} packageName - The package name * @returns {string | undefined} The normalized version */ declare function getRequiredVersionFromDescriptionFile(data: Record, packageName: string): string | undefined | void; declare function normalizeConsumeShareOptions(consumeOptions: ConsumeOptions): { shareConfig: { fixedDependencies: boolean; requiredVersion: ConsumeOptions; strictVersion: ConsumeOptions; singleton: ConsumeOptions; eager: ConsumeOptions; layer: ConsumeOptions; }; shareScope: ConsumeOptions; shareKey: ConsumeOptions; treeShakingMode: ConsumeOptions; }; declare function addSingletonFilterWarning(compilation: Compilation, shareKey: string, // The shareKey or a relevant identifier for the shared module filterType: 'include' | 'exclude', filterProperty: 'request' | 'version', filterValue: string | RegExp, moduleRequest: string, // original request that led to this shared module moduleResource?: string): void; declare function testRequestFilters(remainder: string, includeRequest?: string | RegExp, excludeRequest?: string | RegExp): boolean; declare function createLookupKeyForSharing(request: string, layer?: string | null): string; declare function extractPathAfterNodeModules(filePath: string): string | null; //#endregion export { addSingletonFilterWarning, createLookupKeyForSharing, extractPathAfterNodeModules, getDescriptionFile, getRequiredVersionFromDescriptionFile, normalizeConsumeShareOptions, normalizeVersion, testRequestFilters }; //# sourceMappingURL=utils.d.ts.map