import { File } from "./File"; import { PathMaster, IPackageInformation } from "./PathMaster"; import { WorkFlowContext } from "./WorkflowContext"; import { BundleData } from "../arithmetic/Arithmetic"; /** * * * @export * @class ModuleCollection */ export declare class ModuleCollection { context: WorkFlowContext; name: string; info: IPackageInformation; /** * * * @type {Map} * @memberOf ModuleCollection */ nodeModules: Map; traversed: boolean; acceptFiles: boolean; /** * * * @type {Map} * @memberOf ModuleCollection */ dependencies: Map; /** * * * @type {BundleData} * @memberOf ModuleCollection */ bundle: BundleData; /** * * * * @memberOf ModuleCollection */ entryResolved: boolean; /** * * * @type {PathMaster} * @memberOf ModuleCollection */ pm: PathMaster; /** * * * @type {File} * @memberOf ModuleCollection */ entryFile: File; /** * * * * @memberOf ModuleCollection */ cached: boolean; /** * * * @type {string} * @memberOf ModuleCollection */ cachedContent: string; /** * * * @type {string} * @memberOf ModuleCollection */ cachedName: string; /** * * * @type {string} * @memberOf ModuleCollection */ cacheFile: string; /** * * * @type {Map} * @memberOf ModuleCollection */ conflictingVersions: Map; /** * * * @private * @type {File[]} * @memberOf ModuleCollection */ private toBeResolved; /** * * * @private * * @memberOf ModuleCollection */ private delayedResolve; isDefault: boolean; /** * Creates an instance of ModuleCollection. * * @param {WorkFlowContext} context * @param {string} name * @param {IPackageInformation} [info] * * @memberOf ModuleCollection */ constructor(context: WorkFlowContext, name: string, info?: IPackageInformation); /** * * * @param {File} file * * @memberOf ModuleCollection */ setupEntry(file: File): void; /** * * * @param {boolean} [shouldIgnoreDeps] * @returns * * @memberOf ModuleCollection */ resolveEntry(shouldIgnoreDeps?: boolean): any; /** * Init plugins * Call "init" plugins with context * Inject dependencies as well * @memberOf ModuleCollection */ initPlugins(): void; resolveDepsOnly(depsOnly: Map): Promise; collectBundle(data: BundleData): Promise; /** * * * @param {File} file * @returns * * @memberOf ModuleCollection */ resolveNodeModule(file: File): any; transformGroups(): Promise; resolveSplitFiles(files: File[]): Promise; /** * * * @param {File} file * @param {boolean} [shouldIgnoreDeps] * @returns * * @memberOf ModuleCollection */ resolve(file: File, shouldIgnoreDeps?: boolean): any; }