Package-level declarations
Types
The initialize
hook provides a way to define a custom function that runs in the hooks thread when the hooks module is initialized. Initialization happens when the hooks module is registered via {@link register}.
The load
hook provides a way to define a custom method of determining how a URL should be interpreted, retrieved, and parsed. It is also in charge of validating the import attributes.
The resolve
hook chain is responsible for telling Node.js where to find and how to cache a given import
statement or expression, or require
call. It can optionally return a format (such as 'module'
) as a hint to the load
hook. If a format is specified, the load
hook is ultimately responsible for providing the final format
value (and it is free to ignore the hint provided by resolve
); if resolve
provides a format
, a custom load
hook is required even if only to pass the value to the Node.js default load
hook.
Properties
Functions
Enable module compile cache in the current Node.js instance.
path
is the resolved path for the file for which a corresponding source map should be fetched.
Flush the module compile cache accumulated from modules already loaded in the current Node.js instance to disk. This returns after all the flushing file system operations come to an end, no matter they succeed or not. If there are any errors, this will fail silently, since compile cache misses should not interfere with the actual operation of the application.
Register a module that exports hooks that customize Node.js module resolution and loading behavior. See Customization hooks.
module.stripTypeScriptTypes()
removes type annotations from TypeScript code. It can be used to strip type annotations from TypeScript code before running it with vm.runInContext()
or vm.compileFunction()
. By default, it will throw an error if the code contains TypeScript features that require transformation such as Enums
, see type-stripping for more information. When mode is 'transform'
, it also transforms TypeScript features to JavaScript, see transform TypeScript features for more information. When mode is 'strip'
, source maps are not generated, because locations are preserved. If sourceMap
is provided, when mode is 'strip'
, an error will be thrown.
The module.syncBuiltinESMExports()
method updates all the live bindings for builtin ES Modules
to match the properties of the CommonJS
exports. It does not add or remove exported names from the ES Modules
.