interface InstrumentationModuleFile {
    moduleExports?: unknown;
    name: string;
    supportedVersions: string[];
    patch(moduleExports: unknown, moduleVersion?: string): unknown;
    unpatch(moduleExports?: unknown, moduleVersion?: string): void;
}

Implemented by

Properties

moduleExports?: unknown
name: string

Name of file to be patched with relative path

supportedVersions: string[]

Supported versions for the file.

A module version is supported if one of the supportedVersions in the array satisfies the module version. The syntax of the version is checked with a function compatible with node-semver's satisfies() function. If the version is not supported, we won't apply instrumentation patch. If omitted, all versions of the module will be patched.

It is recommended to always specify a range that is bound to a major version, to avoid breaking changes. New major versions should be reviewed and tested before being added to the supportedVersions array.

Example: ['>=1.2.3 <3']

Methods