@qiwi/npm-types
The fork of npm/types that fixes the most vulnerabilities and brings deps from 2020
Typescript definitions for npm registry content
import * as npm from '@qiwi/npm-types';
const pkg = require('pacote');
pkg.packument('libnpm').then((obj: npm.Packument) => {
console.log(obj.name, 'is the name of the package');
});
GOAL
Make it easier for typescript users to work with npm registry content!
Types should have comments so documentation on npm object properties can appear in vscode contextual popups.
types
-
npm.PackageJson
- the object in the json file you have in your project
-
npm.PackageLock
- the file generated for you by npm that pins your deps.
-
npm.Packument
- the document you get from
https://registry.npmjs.org/<package name here>
- the document you get from
-
npm.Manifest
- the document you get from
curl -H 'accept:application/vnd.npm.install-v1+json' https://registry.npmjs.org/<package name here>
- the document you get from
subtypes
-
npm.PackageVersion
- the objects in the version fields of Packuments
-
npm.LockDependency
- how package locks describe dependencies and sub dependencies
-
npm.ManifestVersion
- the version object in an AbbreviatedPackument
-
npm.Dist
- the object in npm.PackageVersion that holds the tarball location and checksums
-
npm.NpmScripts
- helpful object with all of the possible npm hooks
-
npm.Maintainer
- common type for author, maintainers etc used in many objects
-
npm.Repository
- string or object of repo data