68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 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;
 |