mirror of
https://github.com/morluto/rea.git
synced 2026-10-26 17:35:11 +00:00
57 lines
1.4 KiB
TypeScript
57 lines
1.4 KiB
TypeScript
export interface InstalledPackage {
|
|
id: string;
|
|
name: string;
|
|
version: string;
|
|
integrity: string | null;
|
|
source_url: string | null;
|
|
}
|
|
export interface LockedPackage {
|
|
path: string;
|
|
name: string;
|
|
version: string;
|
|
resolved: string;
|
|
integrity: string;
|
|
dev: boolean;
|
|
optional: boolean;
|
|
license: unknown;
|
|
}
|
|
export function registryIdentity(
|
|
resolved: unknown,
|
|
integrity: unknown,
|
|
): boolean;
|
|
export function requireRegistryLock(packages: LockedPackage[]): void;
|
|
export function advisoryFacts(
|
|
value: unknown,
|
|
exitCode: number | null,
|
|
): {
|
|
status: "unavailable" | "failed" | "passed";
|
|
affected_packages: number | null;
|
|
};
|
|
export function signatureFacts(
|
|
value: unknown,
|
|
exitCode: number | null,
|
|
): {
|
|
status: "unavailable" | "failed" | "passed";
|
|
invalid: number | null;
|
|
missing: number | null;
|
|
verified: null;
|
|
};
|
|
export function dependencyGraph(
|
|
value: unknown,
|
|
directory: string,
|
|
installedPackages: LockedPackage[],
|
|
): {
|
|
nodes: InstalledPackage[];
|
|
edges: { from: string; name: string; to: string }[];
|
|
omissions: { from: string; name: string; reason: string }[];
|
|
unknowns: { reason: string }[];
|
|
fingerprint: string | null;
|
|
};
|
|
export function sourceIdentityDifferences(
|
|
nodes: InstalledPackage[],
|
|
reference: LockedPackage[],
|
|
runtimeOnly: boolean,
|
|
): (InstalledPackage & {
|
|
reason: "integrity_differs" | "integrity_unknown" | "version_not_locked";
|
|
})[];
|