A collection of supplemental NodeJS functions and types
npm install @rnx-kit/tools-node

@rnx-kit/tools-node is a collection of supplemental NodeJS functions and
types.
You can import the entire package, or, to save space, import individual
categories:
``typescript
import * as tools from "@rnx-kit/tools-node";
// Alternatively...
import * as moduleTools from "@rnx-kit/tools-node/module";
import * as packageTools from "@rnx-kit/tools-node/package";
import * as pathTools from "@rnx-kit/tools-node/path";
`
| Category | Type Name | Description |
| -------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| module | FileModuleRef | Module reference rooted to a file system location, either relative to a directory, or as an absolute path. For example, ./index or /repos/rnx-kit/packages/tools/src/index. |react-native
| module | PackageModuleRef | Module reference relative to a package, such as or @rnx-kit/tools/node/index. |package.json
| package | DestructuredModuleRef | Module reference with the package name and optional sub-module path included as path |
| package | FindPackageDependencyOptions | Options which control how package dependecies are located. |
| package | PackageManifest | Schema for the contents of a manifest file. |package.json
| package | PackagePerson | Schema for a reference to a person in . |
| package | PackageRef | Components of a package reference. |
| Category | Function | Description |
| -------- | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| module | getPackageModuleRefFromModulePath(modulePath) | Convert a module path to a package module reference. |isFileModuleRef(r)
| module | | Is the module reference relative to a file location? |isPackageModuleRef(r)
| module | | Is the module reference a package module reference? |parseModuleRef(r)
| module | | Parse a module reference into either a package module reference or a file module reference. If there are any sub-paths, they are returned in paths. |destructureModuleRef(r)
| package | | Destructure a module reference into its component par |findPackage(startDir)
| package | | Find the nearest package.json manifest file. Search upward through all parent directories. |findPackageDependencyDir(ref, options)
| package | | Find the package dependency's directory, starting from the given directory and moving outward, through all parent directories. |findPackageDir(startDir)
| package | | Find the parent directory of the nearest package.json manifest file. Search upward through all parent directories. |parsePackageRef(r)
| package | | Parse a package reference string. An example reference is the name property found in package.json. |readPackage(pkgPath)
| package | | Read a package.json manifest from a file. |resolveDependencyChain(chain, startDir)
| package | | Resolve the path to a dependency given a chain of dependencies leading up to it. |writePackage(pkgPath, manifest, space)
| package | | Write a package.json manifest to a file. |findUp(names, options)
| path | | Finds the specified file(s) or directory(s) by walking up parent directories. |normalizePath(p)` | Normalize the separators in a path, converting each backslash ('\\') to a foreward slash ('/'). |
| path |