{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  "serialNumber": "urn:uuid:e2d6b2a2-3aac-4576-85c9-84db250fcd3d",
  "version": 1,
  "metadata": {
    "timestamp": "2026-07-31T00:18:23Z",
    "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": "ability",
      "group": "@casl",
      "version": "6.7.5",
      "description": "CASL is an isomorphic authorization JavaScript library which restricts what resources a given user is allowed to access",
      "purl": "pkg:npm/%40casl/ability@6.7.5",
      "bom-ref": "pkg:npm/@casl/ability@6.7.5",
      "author": "Sergii Stotskyi <sergiy.stotskiy@gmail.com>",
      "properties": [
        {
          "name": "cdx:npm:scripts",
          "value": "build.core, build.extra, build.types, build.prepare, build, lint, test, release.prepare, release"
        }
      ],
      "type": "application",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "externalReferences": [
        {
          "type": "website",
          "url": "https://casl.js.org"
        },
        {
          "type": "vcs",
          "url": "https://github.com/stalniy/casl.git"
        }
      ]
    },
    "properties": [
      {
        "name": "cdx:bom:componentTypes",
        "value": "npm"
      },
      {
        "name": "cdx:bom:componentNamespaces",
        "value": "@casl\\n@types\\n@ucast"
      },
      {
        "name": "cdx:bom:componentSrcFiles",
        "value": "node_modules/@casl/dx/package.json\\nnode_modules/@types/jest/package.json\\nnode_modules/@types/node/package.json\\nnode_modules/@ucast/mongo2js/package.json\\nnode_modules/chai-spies/package.json\\nnode_modules/chai/package.json\\nnode_modules/expect-type/package.json"
      }
    ]
  },
  "components": [
    {
      "group": "",
      "name": "expect-type",
      "version": "0.15.0",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/expect-type@0.15.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/mmkal/expect-type#readme"
        },
        {
          "type": "vcs",
          "url": "https://github.com/mmkal/expect-type.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/expect-type@0.15.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/expect-type/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/expect-type/package.json"
              }
            ],
            "concludedValue": "node_modules/expect-type/package.json"
          }
        ]
      },
      "tags": [
        "test"
      ]
    },
    {
      "authors": [
        {
          "name": "Jake Luer <jake@alogicalparadox.com> (http://alogicalparadox.com)"
        }
      ],
      "group": "",
      "name": "chai-spies",
      "version": "1.1.0",
      "description": "Spies for the Chai assertion library.",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/chai-spies@1.1.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "git://github.com/chaijs/chai-spies.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/chai-spies@1.1.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/chai-spies/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "chai-spies"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/chai-spies/package.json"
              }
            ],
            "concludedValue": "node_modules/chai-spies/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "spec/spec_helper.js#2"
          }
        ]
      }
    },
    {
      "authors": [
        {
          "name": "Jake Luer <jake@alogicalparadox.com>"
        }
      ],
      "group": "",
      "name": "chai",
      "version": "4.5.0",
      "description": "BDD/TDD assertion library for node.js and the browser. Test framework agnostic.",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/chai@4.5.0",
      "externalReferences": [
        {
          "type": "website",
          "url": "http://chaijs.com"
        },
        {
          "type": "vcs",
          "url": "https://github.com/chaijs/chai"
        }
      ],
      "type": "framework",
      "bom-ref": "pkg:npm/chai@4.5.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/chai/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "chai"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/chai/package.json"
              }
            ],
            "concludedValue": "node_modules/chai/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "spec/spec_helper.js#1"
          }
        ]
      },
      "tags": [
        "framework",
        "test"
      ]
    },
    {
      "authors": [
        {
          "name": "Sergii Stotskyi <sergiy.stotskiy@gmail.com>"
        }
      ],
      "group": "@ucast",
      "name": "mongo2js",
      "version": "1.4.0",
      "description": "git@github.com:stalniy/ucast.git",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "Apache-2.0",
            "url": "https://opensource.org/licenses/Apache-2.0"
          }
        }
      ],
      "purl": "pkg:npm/%40ucast/mongo2js@1.4.0",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/stalniy/ucast/tree/master/packages/mongo2js#readme"
        },
        {
          "type": "vcs",
          "url": "git+https://github.com/stalniy/ucast.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@ucast/mongo2js@1.4.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@ucast/mongo2js/package.json"
        },
        {
          "name": "ExportedModules",
          "value": "@ucast/mongo2js,MongoQueryFieldOperators,@ucast/mongo2js/MongoQueryFieldOperators,MongoQueryOperators,@ucast/mongo2js/MongoQueryOperators,MongoQueryTopLevelOperators,@ucast/mongo2js/MongoQueryTopLevelOperators"
        },
        {
          "name": "ImportedModules",
          "value": "@ucast/mongo2js,buildOr,@ucast/mongo2js/buildOr,buildAnd,@ucast/mongo2js/buildAnd,CompoundCondition,@ucast/mongo2js/CompoundCondition,createFactory,@ucast/mongo2js/createFactory,$exists,@ucast/mongo2js/$exists,$elemMatch,@ucast/mongo2js/$elemMatch,$options,@ucast/mongo2js/$options,$regex,@ucast/mongo2js/$regex,$size,@ucast/mongo2js/$size,$all,@ucast/mongo2js/$all,$nin,@ucast/mongo2js/$nin,@ucast/mongo2js/$in,$gte,@ucast/mongo2js/$gte,@ucast/mongo2js/$gt,$lte,@ucast/mongo2js/$lte,@ucast/mongo2js/$lt,@ucast/mongo2js/$ne,@ucast/mongo2js/$eq,@ucast/mongo2js/and,exists,@ucast/mongo2js/exists,elemMatch,@ucast/mongo2js/elemMatch,regex,@ucast/mongo2js/regex,size,@ucast/mongo2js/size,@ucast/mongo2js/all,@ucast/mongo2js/nin,within,@ucast/mongo2js/within,@ucast/mongo2js/gte,@ucast/mongo2js/gt,@ucast/mongo2js/lte,@ucast/mongo2js/lt,@ucast/mongo2js/ne,@ucast/mongo2js/eq,Condition,@ucast/mongo2js/Condition,BuildMongoQuery,@ucast/mongo2js/BuildMongoQuery,DefaultOperators,@ucast/mongo2js/DefaultOperators"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@ucast/mongo2js/package.json"
              }
            ],
            "concludedValue": "node_modules/@ucast/mongo2js/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "dist/es5m/extra/index.js#1"
          },
          {
            "location": "dist/es5m/index.js#1"
          },
          {
            "location": "dist/es6c/extra/index.js#1"
          },
          {
            "location": "dist/es6c/index.js#1"
          },
          {
            "location": "dist/umd/extra/index.js#1"
          },
          {
            "location": "dist/umd/index.js#1"
          },
          {
            "location": "dist/es6m/extra/index.mjs#1"
          },
          {
            "location": "dist/es6m/index.mjs#1"
          },
          {
            "location": "src/extra/rulesToQuery.ts#1"
          },
          {
            "location": "src/matchers/conditions.ts#33"
          },
          {
            "location": "src/matchers/conditions.ts#91"
          },
          {
            "location": "src/types.ts#1"
          }
        ]
      }
    },
    {
      "group": "@types",
      "name": "node",
      "version": "24.10.3",
      "description": "TypeScript definitions for node",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40types/node@24.10.3",
      "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.10.3",
      "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"
          }
        ]
      }
    },
    {
      "group": "@types",
      "name": "jest",
      "version": "29.5.14",
      "description": "TypeScript definitions for jest",
      "scope": "optional",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40types/jest@29.5.14",
      "externalReferences": [
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest"
        },
        {
          "type": "vcs",
          "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git"
        }
      ],
      "type": "library",
      "bom-ref": "pkg:npm/@types/jest@29.5.14",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@types/jest/package.json"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@types/jest/package.json"
              }
            ],
            "concludedValue": "node_modules/@types/jest/package.json"
          }
        ]
      },
      "tags": [
        "test"
      ]
    },
    {
      "authors": [
        {
          "name": "Sergii Stotskyi <sergiy.stotskiy@gmail.com>"
        }
      ],
      "group": "@casl",
      "name": "dx",
      "version": "1.0.0",
      "description": "Private dev env for CASL",
      "scope": "required",
      "licenses": [
        {
          "license": {
            "id": "MIT",
            "url": "https://opensource.org/licenses/MIT"
          }
        }
      ],
      "purl": "pkg:npm/%40casl/dx@1.0.0",
      "type": "library",
      "bom-ref": "pkg:npm/@casl/dx@1.0.0",
      "properties": [
        {
          "name": "SrcFile",
          "value": "node_modules/@casl/dx/package.json"
        },
        {
          "name": "ImportedModules",
          "value": "@casl/dx/lib/spec_helper"
        }
      ],
      "evidence": {
        "identity": [
          {
            "field": "purl",
            "confidence": 0.7,
            "methods": [
              {
                "technique": "manifest-analysis",
                "confidence": 0.7,
                "value": "node_modules/@casl/dx/package.json"
              }
            ],
            "concludedValue": "node_modules/@casl/dx/package.json"
          }
        ],
        "occurrences": [
          {
            "location": "spec/spec_helper.js#3"
          }
        ]
      }
    }
  ],
  "dependencies": [],
  "annotations": [
    {
      "bom-ref": "metadata-annotations",
      "subjects": [
        "pkg:npm/@casl/ability@6.7.5"
      ],
      "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-31T00:18:23Z",
      "text": "This Software Bill-of-Materials (SBOM) document was created on Friday, July 31, 2026 with cdxgen. The data was captured during the pre-build lifecycle phase without building the application. The document describes an application named 'ability' with version '6.7.5'. The package type in this SBOM is npm with 3 purl namespaces described under components. The components were identified from 7 source files."
    }
  ]
}