@nodesecure/scanner
Version:
A package API to run a static analysis of your module's dependencies.
54 lines • 1.95 kB
TypeScript
import type { Packument, PackumentVersion } from "@nodesecure/npm-types";
import { type DateProvider } from "./PackumentExtractor.js";
import type { Dependency } from "../types.js";
import { Logger } from "../class/logger.class.js";
export interface NpmApiClient {
packument(name: string): Promise<Packument>;
packumentVersion(name: string, version: string): Promise<PackumentVersion>;
}
export interface NpmRegistryProviderOptions {
dateProvider?: DateProvider;
npmApiClient?: NpmApiClient;
}
export declare class NpmRegistryProvider {
#private;
name: string;
version: string;
constructor(name: string, version: string, options?: NpmRegistryProviderOptions);
collectPackageVersionData(): Promise<{
links: {
npm: string;
homepage: string | null;
repository: string | null;
};
integrity: string;
deprecated: string | undefined;
}>;
collectPackageData(): Promise<{
metadata: {
publishedCount: number;
lastUpdateAt: Date;
lastVersion: string;
hasChangedAuthor: boolean;
hasManyPublishers: boolean;
hasReceivedUpdateInOneYear: boolean;
author: import("../types.js").Maintainer | null;
homepage: string | null;
maintainers: import("../types.js").Maintainer[];
publishers: import("../types.js").Publisher[];
integrity: Record<string, string>;
};
flags: string[];
version: {
links: {
npm: string;
homepage: string | null;
repository: string | null;
};
deprecated: string | undefined;
};
}>;
enrichDependency(logger: Logger, dependency: Dependency): Promise<void>;
enrichDependencyVersion(dependency: Dependency): Promise<void>;
}
//# sourceMappingURL=NpmRegistryProvider.d.ts.map