{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  "serialNumber": "urn:uuid:fc831343-b554-4a16-b6ec-c830ea4639c3",
  "version": 1,
  "metadata": {
    "timestamp": "2026-07-30T21:56:57Z",
    "tools": {
      "components": [
        {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.3.3",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.3.3",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.3.3",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      ]
    },
    "authors": [
      {
        "name": "OWASP Foundation"
      }
    ],
    "lifecycles": [
      {
        "phase": "pre-build"
      }
    ],
    "component": {
      "name": "reflect-metadata-utils",
      "group": "@inversifyjs",
      "version": "1.5.0",
      "description": "Reflect metadata utils",
      "purl": "pkg:npm/%40inversifyjs/reflect-metadata-utils@1.5.0",
      "bom-ref": "pkg:npm/@inversifyjs/reflect-metadata-utils@1.5.0",
      "author": "Roberto Pintos López",
      "properties": [
        {
          "name": "cdx:npm:scripts",
          "value": "build, build:clean, format, lint, prebuild, test, test:integration, test:coverage, test:mutation, test:uncommitted, test:unit"
        }
      ],
      "type": "application",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "externalReferences": [
        {
          "type": "website",
          "url": "https://inversify.io"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/inversify/monorepo.git"
        }
      ]
    },
    "properties": [
      {
        "name": "cdx:bom:componentTypes",
        "value": "npm"
      },
      {
        "name": "cdx:bom:componentNamespaces",
        "value": "@inversifyjs\\n@stryker-mutator\\n@types\\n@vitest"
      },
      {
        "name": "cdx:bom:componentSrcFiles",
        "value": "node_modules/@inversifyjs/eslint-plugin-require-extensions/package.json\\nnode_modules/@stryker-mutator/core/package.json\\nnode_modules/@stryker-mutator/typescript-checker/package.json\\nnode_modules/@stryker-mutator/vitest-runner/package.json\\nnode_modules/@types/node/package.json\\nnode_modules/@vitest/coverage-v8/package.json\\nnode_modules/eslint/package.json\\nnode_modules/prettier/package.json\\nnode_modules/reflect-metadata/package.json\\nnode_modules/rimraf/package.json\\nnode_modules/tslib/package.json\\nnode_modules/typescript/package.json\\nnode_modules/vitest/package.json"
      }
    ]
  },
  "components": [
    {
      "authors": [
        {
          "name": "Anthony Fu <anthonyfu117@hotmail.com>"
        }
      ],
      "group": "",
      "name": "vitest",
      "version": "4.1.0",
      "description": "Next generation testing framework powered by Vite",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/vitest@4.1.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://vitest.dev"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/vitest-dev/vitest.git"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/vitest@4.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/vitest/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/vitest/package.json"
              }
            ],
            "concludedValue": "node_modules/vitest/package.json"
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "authors": [
        {
          "name": "Microsoft Corp."
        }
      ],
      "group": "",
      "name": "typescript",
      "version": "5.9.3",
      "description": "TypeScript is a language for application scale JavaScript development",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/typescript@5.9.3",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://www.typescriptlang.org/"
        },
        {
          "type": "vcs",
          "url": "https://github.com/microsoft/TypeScript.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/typescript@5.9.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/typescript/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/typescript/package.json"
              }
            ],
            "concludedValue": "node_modules/typescript/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Microsoft Corp."
        }
      ],
      "group": "",
      "name": "tslib",
      "version": "2.8.1",
      "description": "Runtime library for TypeScript helper functions",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "0BSD",
            "url": "https://opensource.org/licenses/0BSD"
          }
        }
      ],
      "purl": "pkg:npm/tslib@2.8.1",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://www.typescriptlang.org/"
        },
        {
          "type": "vcs",
          "url": "https://github.com/Microsoft/tslib.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/tslib@2.8.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/tslib/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/tslib/package.json"
              }
            ],
            "concludedValue": "node_modules/tslib/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)"
        }
      ],
      "group": "",
      "name": "rimraf",
      "version": "6.1.3",
      "description": "A deep deletion module for node (like `rm -rf`)",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "BlueOak-1.0.0",
            "url": "https://opensource.org/licenses/BlueOak-1.0.0"
          }
        }
      ],
      "purl": "pkg:npm/rimraf@6.1.3",
      "type": "library",
      "bom-ref": "pkg:npm/rimraf@6.1.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/rimraf/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/rimraf/package.json"
              }
            ],
            "concludedValue": "node_modules/rimraf/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Ron Buckton <ron.buckton@microsoft.com> (http://github.com/rbuckton)"
        }
      ],
      "group": "",
      "name": "reflect-metadata",
      "version": "0.2.2",
      "description": "Polyfill for Metadata Reflection API",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/reflect-metadata@0.2.2",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "http://rbuckton.github.io/reflect-metadata"
        },
        {
          "type": "vcs",
          "url": "https://github.com/rbuckton/reflect-metadata.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/reflect-metadata@0.2.2",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/reflect-metadata/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/reflect-metadata/package.json"
              }
            ],
            "concludedValue": "node_modules/reflect-metadata/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "James Long"
        }
      ],
      "group": "",
      "name": "prettier",
      "version": "3.8.1",
      "description": "Prettier is an opinionated code formatter",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/prettier@3.8.1",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://prettier.io"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/prettier@3.8.1",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/prettier/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/prettier/package.json"
              }
            ],
            "concludedValue": "node_modules/prettier/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Nicholas C. Zakas <nicholas+npm@nczconsulting.com>"
        }
      ],
      "group": "",
      "name": "eslint",
      "version": "10.0.3",
      "description": "An AST-based pattern checker for JavaScript.",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/eslint@10.0.3",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://eslint.org"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/eslint@10.0.3",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/eslint/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/eslint/package.json"
              }
            ],
            "concludedValue": "node_modules/eslint/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Anthony Fu <anthonyfu117@hotmail.com>"
        }
      ],
      "group": "@vitest",
      "name": "coverage-v8",
      "version": "4.1.0",
      "description": "V8 coverage provider for Vitest",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40vitest/coverage-v8@4.1.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://vitest.dev/guide/coverage"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/vitest-dev/vitest.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@vitest/coverage-v8@4.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@vitest/coverage-v8/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@vitest/coverage-v8/package.json"
              }
            ],
            "concludedValue": "node_modules/@vitest/coverage-v8/package.json"
          }
        ]
      }
    },
    {
      "group": "@types",
      "name": "node",
      "version": "24.12.0",
      "description": "TypeScript definitions for node",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40types/node@24.12.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node"
        },
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@types/node@24.12.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@types/node/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@types/node/package.json"
              }
            ],
            "concludedValue": "node_modules/@types/node/package.json"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Odin van der Linden <odinvanderlinden2001@gmail.com>"
        }
      ],
      "group": "@stryker-mutator",
      "name": "vitest-runner",
      "version": "9.6.0",
      "description": "A plugin to use the vitest test runner and framework in Stryker, the JavaScript mutation testing framework",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/%40stryker-mutator/vitest-runner@9.6.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://stryker-mutator.io/docs/stryker-js/vitest-runner"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/stryker-mutator/stryker-js.git"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@stryker-mutator/vitest-runner@9.6.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@stryker-mutator/vitest-runner/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@stryker-mutator/vitest-runner/package.json"
              }
            ],
            "concludedValue": "node_modules/@stryker-mutator/vitest-runner/package.json"
          }
        ]
      },
      "tags": [
        "framework",
        "test"
      ]
    },
    {
      "authors": [
        {
          "name": "Nico Jansen <jansennico@gmail.com>"
        }
      ],
      "group": "@stryker-mutator",
      "name": "typescript-checker",
      "version": "9.6.0",
      "description": "A typescript type checker plugin to be used in Stryker, the JavaScript mutation testing framework",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/%40stryker-mutator/typescript-checker@9.6.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://stryker-mutator.io/docs/stryker-js/typescript-checker"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/stryker-mutator/stryker-js.git"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@stryker-mutator/typescript-checker@9.6.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@stryker-mutator/typescript-checker/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@stryker-mutator/typescript-checker/package.json"
              }
            ],
            "concludedValue": "node_modules/@stryker-mutator/typescript-checker/package.json"
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "authors": [
        {
          "name": "Simon de Lang"
        }
      ],
      "group": "@stryker-mutator",
      "name": "core",
      "version": "9.6.0",
      "description": "The extendable JavaScript mutation testing framework",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/%40stryker-mutator/core@9.6.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://stryker-mutator.io/"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/stryker-mutator/stryker-js.git"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/@stryker-mutator/core@9.6.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@stryker-mutator/core/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@stryker-mutator/core/package.json"
              }
            ],
            "concludedValue": "node_modules/@stryker-mutator/core/package.json"
          }
        ]
      },
      "tags": [
        "framework"
      ]
    },
    {
      "authors": [
        {
          "name": "Roberto Pintos López"
        }
      ],
      "group": "@inversifyjs",
      "name": "eslint-plugin-require-extensions",
      "version": "0.2.0",
      "description": "ESLint plugin to enforce file extensions in ESM imports and exports",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40inversifyjs/eslint-plugin-require-extensions@0.2.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "https://inversify.io"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/inversify/monorepo.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@inversifyjs/eslint-plugin-require-extensions@0.2.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@inversifyjs/eslint-plugin-require-extensions/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@inversifyjs/eslint-plugin-require-extensions"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@inversifyjs/eslint-plugin-require-extensions/package.json"
              }
            ],
            "concludedValue": "node_modules/@inversifyjs/eslint-plugin-require-extensions/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "eslint.config.mjs#3"
          }
        ]
      }
    }
  ],
  "dependencies": [],
  "annotations": [
    {
      "bom-ref": "metadata-annotations",
      "subjects": [
        "pkg:npm/@inversifyjs/reflect-metadata-utils@1.5.0"
      ],
      "annotator": {
        "component": {
          "group": "@cyclonedx",
          "name": "cdxgen",
          "version": "12.3.3",
          "purl": "pkg:npm/%40cyclonedx/cdxgen@12.3.3",
          "type": "application",
          "bom-ref": "pkg:npm/@cyclonedx/cdxgen@12.3.3",
          "publisher": "OWASP Foundation",
          "authors": [
            {
              "name": "OWASP Foundation"
            }
          ]
        }
      },
      "timestamp": "2026-07-30T21:56:57Z",
      "text": "This Software Bill-of-Materials (SBOM) document was created on Thursday, July 30, 2026 with cdxgen. The data was captured during the pre-build lifecycle phase without building the application. The document describes an application named 'reflect-metadata-utils' with version '1.5.0'. The package type in this SBOM is npm with 4 purl namespaces described under components. The components were identified from 13 source files."
    }
  ]
}