What is @types/normalize-package-data?
The @types/normalize-package-data package provides TypeScript type definitions for the normalize-package-data library. This library is used to normalize package.json data, ensuring that it conforms to expected standards and formats.
What are @types/normalize-package-data's main functionalities?
Normalization of package.json data
This feature allows you to normalize the data in a package.json file. The normalize function takes a package data object and modifies it to conform to expected standards.
const normalize = require('normalize-package-data');
const packageData = {
name: 'example-package',
version: '1.0.0',
description: 'An example package'
};
normalize(packageData);
console.log(packageData);
Validation of package.json fields
This feature validates the fields in a package.json file. If any fields are invalid, they are corrected or warnings are added to the package data object.
const normalize = require('normalize-package-data');
const packageData = {
name: 'example-package',
version: '1.0.0',
description: 'An example package',
repository: 'invalid-url'
};
normalize(packageData);
console.log(packageData);
Other packages similar to @types/normalize-package-data
read-pkg
The read-pkg package is used to read and parse package.json files. It provides a simple API to read the package.json file of a project and returns the parsed data. Unlike normalize-package-data, it does not perform normalization or validation of the data.
validate-npm-package
The validate-npm-package package is used to validate the name and version of npm packages. It provides functions to check if a package name is valid and if a version number is valid. While it offers validation, it does not perform the comprehensive normalization that normalize-package-data does.
normalize-package-data
The normalize-package-data package itself is used to normalize package.json data, ensuring that it conforms to expected standards and formats. It provides comprehensive normalization and validation of package.json fields.
Installation
npm install --save @types/normalize-package-data
Summary
This package contains type definitions for normalize-package-data (https://github.com/npm/normalize-package-data#readme).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/normalize-package-data.
export = normalize;
declare function normalize(data: normalize.Input, warn?: normalize.WarnFn, strict?: boolean): void;
declare function normalize(data: normalize.Input, strict?: boolean): void;
declare namespace normalize {
type WarnFn = (msg: string) => void;
interface Input {
[k: string]: any;
}
interface Person {
name?: string | undefined;
email?: string | undefined;
url?: string | undefined;
}
interface Package {
[k: string]: any;
name: string;
version: string;
files?: string[] | undefined;
bin?: { [k: string]: string } | undefined;
man?: string[] | undefined;
keywords?: string[] | undefined;
author?: Person | undefined;
maintainers?: Person[] | undefined;
contributors?: Person[] | undefined;
bundleDependencies?: { [name: string]: string } | undefined;
dependencies?: { [name: string]: string } | undefined;
devDependencies?: { [name: string]: string } | undefined;
optionalDependencies?: { [name: string]: string } | undefined;
description?: string | undefined;
engines?: { [type: string]: string } | undefined;
license?: string | undefined;
repository?: { type: string; url: string } | undefined;
bugs?: { url: string; email?: string | undefined } | { url?: string | undefined; email: string } | undefined;
homepage?: string | undefined;
scripts?: { [k: string]: string } | undefined;
readme: string;
_id: string;
}
}
Additional Details
- Last updated: Tue, 07 Nov 2023 09:09:39 GMT
- Dependencies: none
Credits
These definitions were written by Jeff Dickey.