import type { IReferencedProjectMap } from '../cumulativeManifestProcessor/CumulativeManifestProcessor'; /** * @beta */ export interface IExternalProject { /** * The ID of the project from the manifest. */ id: string; /** * The name of the project. */ name: string; /** * The version of the project from the manifest. */ version: string | undefined; /** * The failover path, if one exists. */ failoverPath?: string; } /** * @internal */ export interface IDynamicExternalProject extends IExternalProject { /** * A function to get the failover path given the package's root. */ getFailoverPath?: (projectRootPath: string) => string; /** * A function to get the version of the package. Return undefined if the package is not a dependency. */ getVersion: (projectRootPath: string, referencedProjects: IReferencedProjectMap) => string | undefined; } /** * @internal */ export declare function includeNonStandardExternal(name: string, external: IDynamicExternalProject): void; /** * This is a temporary function that will soon be replaced by something more robust. It * currently serves to include linked externals referenced in projects that don't have manifests. */ export declare function getNonStandardExternals(projectRootPath: string, referencedProjects: IReferencedProjectMap): Map; /** * @internal */ export declare function getVersionFromPackageJson(packageName: string): (projectRootPath: string) => string | undefined; //# sourceMappingURL=ExternalsProcessor.d.ts.map