/// import { Transform } from 'stream'; export interface ProjectOptions { /** * The directory that external modules get imported to. (default: 'module') * @example * { modulesDir: 'lib' } */ modulesDir?: string; /** * Specify some additional entry-points. * In some cases you might want to have a file as entry point that is being required in other files. * You can do this with this option. */ entryPoints?: string[]; } export default class Project { private options; private linker; private files; private names; private requirements; private requiredIn; constructor(options: ProjectOptions); /** * Creates a new stream for the current project. */ through(): Transform; private readonly entryPoints; private build(stream); /** * Merges the packages into single files and writes them to the output stream. * It also generates and sets the names of the packages. * @param stream - The output stream. * @param packs - A storage containing the packs. */ private exportPacks(stream, packs); /** * Exports the locations of the files and their requirements into * the "webrequire-mappings.js" file in the base directory. * @param stream - The output stream. * @param locations - An object that contains the files with the names of their packs. */ private exportMappings(stream, locations); /** * Creates a new vinyl with a given name and contents. * All other missing information will be filled from the first known file. * @param name - The name of the file relative to the base directory. * @param contents - The contents of the file (default: null). */ private createVinyl(name?, contents?); }