| 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; |