@jspm/generator
Version:
Package Import Map Generation Tool
56 lines (55 loc) • 2.6 kB
TypeScript
import { IImportMap } from "@jspm/import-map";
import { Resolver } from "../trace/resolver.js";
import { PackageProvider } from "./installer.js";
import { PackageTarget, ExactModule } from "./package.js";
export interface LockResolutions {
primary: {
[pkgName: string]: InstalledResolution;
};
secondary: {
[pkgUrl: `${string}/`]: {
[pkgName: string]: InstalledResolution;
};
};
flattened: {
[scopeUrl: `${string}/`]: {
[pkgName: string]: FlatInstalledResolution[];
};
};
}
interface PackageToTarget {
[pkgName: string]: PackageTarget | URL;
}
export interface VersionConstraints {
primary: PackageToTarget;
secondary: {
[pkgUrl: `${string}/`]: PackageToTarget;
};
}
export interface InstalledResolution {
installUrl: `${string}/`;
installSubpath: "." | `./${string}` | null;
}
export interface FlatInstalledResolution {
export: `.${string}`;
resolution: InstalledResolution;
}
export declare function getResolution(resolutions: LockResolutions, name: string, pkgScope: `${string}/` | null): InstalledResolution | null;
export declare function getFlattenedResolution(resolutions: LockResolutions, name: string, pkgScope: `${string}/`, flattenedSubpath: `.${string}`): InstalledResolution | null;
export declare function setConstraint(constraints: VersionConstraints, name: string, target: PackageTarget, pkgScope?: string | null): void;
export declare function setResolution(resolutions: LockResolutions, name: string, installUrl: `${string}/`, pkgScope?: `${string}/` | null, installSubpath?: "." | `./${string}` | null): boolean;
export declare function mergeLocks(resolutions: LockResolutions, newResolutions: LockResolutions): void;
export declare function mergeConstraints(constraints: VersionConstraints, newConstraints: VersionConstraints): void;
export interface PackageConstraint {
alias: string;
pkgScope: `${string}/` | null;
ranges: any[];
}
export declare function getConstraintFor(name: string, registry: string, constraints: VersionConstraints): PackageConstraint[];
export declare function extractLockConstraintsAndMap(map: IImportMap, preloadUrls: string[], mapUrl: URL, rootUrl: URL | null, defaultRegistry: string, resolver: Resolver, provider: PackageProvider): Promise<{
locks: LockResolutions;
constraints: VersionConstraints;
maps: IImportMap;
}>;
export declare function translateProvider(mdl: ExactModule, { provider, layer }: PackageProvider, resolver: Resolver, parentUrl: string): Promise<ExactModule | null>;
export {};