constructor() {
		/** @type {Dependency[]} */
		this.dependencies = [];
		/** @type {AsyncDependenciesBlock[]} */
		this.blocks = [];
		/** @type {DependenciesBlock | undefined} */
		this.parent = undefined;
	}
DependenciesBlock is the base class for all Module classes in webpack. It describes a
"block" of dependencies which are pointers to other DependenciesBlock instances. For example
when a Module has a CommonJs require statement, the DependencyBlock for the CommonJs module
would be added as a dependency to the Module. DependenciesBlock is inherited by two types of classes:
Module subclasses and AsyncDependenciesBlock subclasses. The only difference between the two is that
AsyncDependenciesBlock subclasses are used for code-splitting (async boundary) and Module subclasses are not.