You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.4 KiB
67 lines
1.4 KiB
import * as typeFest from 'type-fest'; |
|
import normalize = require('normalize-package-data'); |
|
|
|
declare namespace readPkg { |
|
interface Options { |
|
/** |
|
[Normalize](https://github.com/npm/normalize-package-data#what-normalization-currently-entails) the package data. |
|
|
|
@default true |
|
*/ |
|
readonly normalize?: boolean; |
|
|
|
/** |
|
Current working directory. |
|
|
|
@default process.cwd() |
|
*/ |
|
readonly cwd?: string; |
|
} |
|
|
|
interface NormalizeOptions extends Options { |
|
readonly normalize?: true; |
|
} |
|
|
|
type NormalizedPackageJson = PackageJson & normalize.Package; |
|
type PackageJson = typeFest.PackageJson; |
|
} |
|
|
|
declare const readPkg: { |
|
/** |
|
@returns The parsed JSON. |
|
|
|
@example |
|
``` |
|
import readPkg = require('read-pkg'); |
|
|
|
(async () => { |
|
console.log(await readPkg()); |
|
//=> {name: 'read-pkg', …} |
|
|
|
console.log(await readPkg({cwd: 'some-other-directory'}); |
|
//=> {name: 'unicorn', …} |
|
})(); |
|
``` |
|
*/ |
|
(options?: readPkg.NormalizeOptions): Promise<readPkg.NormalizedPackageJson>; |
|
(options: readPkg.Options): Promise<readPkg.PackageJson>; |
|
|
|
/** |
|
@returns The parsed JSON. |
|
|
|
@example |
|
``` |
|
import readPkg = require('read-pkg'); |
|
|
|
console.log(readPkg.sync()); |
|
//=> {name: 'read-pkg', …} |
|
|
|
console.log(readPkg.sync({cwd: 'some-other-directory'}); |
|
//=> {name: 'unicorn', …} |
|
``` |
|
*/ |
|
sync(options?: readPkg.NormalizeOptions): readPkg.NormalizedPackageJson; |
|
sync(options: readPkg.Options): readPkg.PackageJson; |
|
}; |
|
|
|
export = readPkg;
|
|
|