UNPKG

1.79 kBTypeScriptView Raw
1import {Except} from 'type-fest';
2import {readPackageAsync, readPackageSync, Options as ReadPackageOptions, NormalizeOptions as ReadPackageNormalizeOptions, PackageJson, NormalizedPackageJson} from 'read-pkg';
3
4export type Options = {
5 /**
6 Directory to start looking for a package.json file.
7
8 @default process.cwd()
9 */
10 cwd?: string;
11} & Except<ReadPackageOptions, 'cwd'>;
12
13export type NormalizeOptions = {
14 /**
15 Directory to start looking for a package.json file.
16
17 @default process.cwd()
18 */
19 cwd?: string;
20} & Except<ReadPackageNormalizeOptions, 'cwd'>;
21
22export interface ReadResult {
23 packageJson: PackageJson;
24 path: string;
25}
26
27export interface NormalizedReadResult {
28 packageJson: NormalizedPackageJson;
29 path: string;
30}
31
32export {
33 PackageJson,
34 NormalizedPackageJson
35};
36
37/**
38Read the closest `package.json` file.
39
40@example
41```
42import {readPackageUpAsync} from 'read-pkg-up';
43
44console.log(await readPackageUpAsync());
45// {
46// packageJson: {
47// name: 'awesome-package',
48// version: '1.0.0',
49// …
50// },
51// path: '/Users/sindresorhus/dev/awesome-package/package.json'
52// }
53```
54*/
55export function readPackageUpAsync(options?: NormalizeOptions): Promise<NormalizedReadResult | undefined>;
56export function readPackageUpAsync(options: Options): Promise<ReadResult | undefined>;
57
58/**
59Synchronously read the closest `package.json` file.
60
61@example
62```
63import {readPackageUpSync} from 'read-pkg-up';
64
65console.log(readPackageUpSync());
66// {
67// packageJson: {
68// name: 'awesome-package',
69// version: '1.0.0',
70// …
71// },
72// path: '/Users/sindresorhus/dev/awesome-package/package.json'
73// }
74```
75*/
76export function readPackageUpSync(options?: NormalizeOptions): NormalizedReadResult | undefined;
77export function readPackageUpSync(options: Options): ReadResult | undefined;