//#region src/index.d.ts interface PackageExportsManifestOptions { /** * The current working directory to use when resolving the package.json file. * * @default process.cwd() */ cwd?: string; /** * How should entry points be imported. * * @default 'parallel' */ sequence?: 'parallel' | 'sequential'; /** * The type of import source to use. * * - `package` - import from package name directly, for example `import('vitest/config')` * - `dist` - import the module from the defined `exports` entry, for example `import('./dist/config.mjs')` * - `src` - import the module from the `src` directory (replace `dist` with `src`), for example `import('./src/config.ts')` * * @default 'dist' */ importMode?: 'package' | 'dist' | 'src'; /** * Resolve the export entries, filter or modify the entries. */ resolveExportEntries?: (entries: [entry: string, path: string][]) => [entry: string, path: string][]; /** * Get a representation of a value. * * @default 'value => typeof value' */ resolveValueType?: (value: unknown) => any; /** * Resolve the source path from a dist path, for example `dist/config.mjs` -> `src/config.ts`. * * Only used when `importMode` is set to `src`. * * @default `dist => dist.replace('dist', 'src').replace(/\.[mc]?js$/, '')` */ resolveSourcePath?: (dist: string) => string; /** * Resolve the value of the `exports` entry in `package.json`, and return a path to import. * * @default `value => value['module-sync'] || value.default || value.import || value.module || value.require` */ resolveExportsValue?: (value: string | Record) => string | undefined; /** * Determine if an entry should be ignored. */ shouldIgnoreEntry?: ({ entry, path }: { entry: string; path: string; }) => boolean; } interface PackageExportsManifest { package: { name: string; version?: string; }; importMode: 'package' | 'dist' | 'src'; exports: Record>; } declare function getPackageExportsManifest(options: PackageExportsManifestOptions): Promise; //#endregion export { PackageExportsManifest, PackageExportsManifestOptions, getPackageExportsManifest };