import { CoatManifestStrict } from "../types/coat-manifest";
/**
 * Merges all dependencies that have been declared in the coat project
 * and its templates.
 *
 * Dependencies are only overriden if the current version doesn't satisfy
 * a newer declared version.
 * Example:
 *
 * templateA declares a dependency on "package": "^1.0.5"
 * templateB declares a dependency on "package": "^1.0.1"
 * templateC declares a dependency on "package": "^1.1.0"
 * Result: "package": "^1.1.0" (satisfies all three templates)
 *
 * @param allDependencies All dependencies of the current coat project
 */
export declare function mergeDependencies(allDependencies: CoatManifestStrict["dependencies"][]): CoatManifestStrict["dependencies"];
