auditjs
Version:
Audit dependencies to identify known vulnerabilities and maintenance problems
55 lines (54 loc) • 1.95 kB
TypeScript
import { Options } from './Options';
export declare class CycloneDXSbomCreator {
readonly path: string;
readonly options?: Options | undefined;
readonly licenseFilenames: Array<string>;
readonly licenseContentTypes: {
licenseContentType: string;
fileExtension: string;
}[];
readonly SBOMSCHEMA: string;
constructor(path: string, options?: Options | undefined);
createBom(pkgInfo: any): Promise<string>;
getPackageInfoFromReadInstalled(path?: string): Promise<any>;
private listComponents;
private addComponent;
/**
* If the author has described the module as a 'framework', the take their
* word for it, otherwise, identify the module as a 'library'.
*/
private determinePackageType;
/**
* Uses the SHA1 shasum (if Present) otherwise utilizes Subresource Integrity
* of the package with support for multiple hashing algorithms.
*/
private processHashes;
/**
* Adds a hash to component.
*/
private addComponentHash;
/**
* Adds external references supported by the package format.
*/
private addExternalReferences;
private pushURLToExternalReferences;
/**
* Performs a lookup + validation of the license specified in the
* package. If the license is a valid SPDX license ID, set the 'id'
* of the license object, otherwise, set the 'name' of the license
* object.
*/
private getLicenses;
/**
* Tries to find a file containing the license text based on commonly
* used naming and content types. If a candidate file is found, add
* the text to the license text object and stop.
*/
private addLicenseText;
/**
* Read the file from the given path to the license text object and includes
* content-type attribute, if not default. Returns the license text object.
*/
private readLicenseText;
private parsePackageJsonName;
}