Files
reverse-engineering-anything/scripts/lib/dependency-security-facts.d.mts
T

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";
})[];