{
  "name": "genkit",
  "description": "Genkit AI framework",
  "keywords": [
    "genkit",
    "ai",
    "genai",
    "generative-ai"
  ],
  "version": "1.17.1",
  "type": "commonjs",
  "main": "./lib/cjs/index.js",
  "homepage": "https://genkit.dev",
  "repository": {
    "type": "git",
    "url": "https://github.com/firebase/genkit.git",
    "directory": "js/genkit"
  },
  "author": "genkit",
  "license": "Apache-2.0",
  "dependencies": {
    "uuid": "^10.0.0",
    "@genkit-ai/ai": "1.17.1",
    "@genkit-ai/core": "1.17.1"
  },
  "devDependencies": {
    "@types/body-parser": "^1.19.5",
    "@types/express": "^4.17.21",
    "@types/node": "^22.15.3",
    "@types/uuid": "^9.0.6",
    "npm-run-all": "^4.1.5",
    "rimraf": "^6.0.1",
    "tsup": "^8.3.5",
    "tsx": "^4.19.2",
    "typescript": "^4.9.0"
  },
  "files": [
    "genkit-ui",
    "lib",
    "src",
    "*"
  ],
  "types": "lib/index.d.ts",
  "exports": {
    ".": {
      "types": "./lib/index.d.ts",
      "require": "./lib/index.js",
      "import": "./lib/index.mjs",
      "default": "./lib/index.js"
    },
    "./registry": {
      "types": "./lib/registry.d.ts",
      "require": "./lib/registry.js",
      "import": "./lib/registry.mjs",
      "default": "./lib/registry.js"
    },
    "./beta": {
      "types": "./lib/beta.d.ts",
      "require": "./lib/beta.js",
      "import": "./lib/beta.mjs",
      "default": "./lib/beta.js"
    },
    "./tracing": {
      "types": "./lib/tracing.d.ts",
      "require": "./lib/tracing.js",
      "import": "./lib/tracing.mjs",
      "default": "./lib/tracing.js"
    },
    "./logging": {
      "types": "./lib/logging.d.ts",
      "require": "./lib/logging.js",
      "import": "./lib/logging.mjs",
      "default": "./lib/logging.js"
    },
    "./schema": {
      "types": "./lib/schema.d.ts",
      "require": "./lib/schema.js",
      "import": "./lib/schema.mjs",
      "default": "./lib/schema.js"
    },
    "./formats": {
      "types": "./lib/formats.d.ts",
      "require": "./lib/formats.js",
      "import": "./lib/formats.mjs",
      "default": "./lib/formats.js"
    },
    "./retriever": {
      "types": "./lib/retriever.d.ts",
      "require": "./lib/retriever.js",
      "import": "./lib/retriever.mjs",
      "default": "./lib/retriever.js"
    },
    "./reranker": {
      "types": "./lib/reranker.d.ts",
      "require": "./lib/reranker.js",
      "import": "./lib/reranker.mjs",
      "default": "./lib/reranker.js"
    },
    "./embedder": {
      "types": "./lib/embedder.d.ts",
      "require": "./lib/embedder.js",
      "import": "./lib/embedder.mjs",
      "default": "./lib/embedder.js"
    },
    "./evaluator": {
      "types": "./lib/evaluator.d.ts",
      "require": "./lib/evaluator.js",
      "import": "./lib/evaluator.mjs",
      "default": "./lib/evaluator.js"
    },
    "./model": {
      "types": "./lib/model.d.ts",
      "require": "./lib/model.js",
      "import": "./lib/model.mjs",
      "default": "./lib/model.js"
    },
    "./model/middleware": {
      "types": "./lib/middleware.d.ts",
      "require": "./lib/middleware.js",
      "import": "./lib/middleware.mjs",
      "default": "./lib/middleware.js"
    },
    "./extract": {
      "types": "./lib/extract.d.ts",
      "require": "./lib/extract.js",
      "import": "./lib/extract.mjs",
      "default": "./lib/extract.js"
    },
    "./testing": {
      "types": "./lib/testing.d.ts",
      "require": "./lib/testing.js",
      "import": "./lib/testing.mjs",
      "default": "./lib/testing.js"
    },
    "./tool": {
      "types": "./lib/tool.d.ts",
      "require": "./lib/tool.js",
      "import": "./lib/tool.mjs",
      "default": "./lib/tool.js"
    },
    "./plugin": {
      "types": "./lib/plugin.d.ts",
      "require": "./lib/plugin.js",
      "import": "./lib/plugin.mjs",
      "default": "./lib/plugin.js"
    },
    "./beta/client": {
      "types": "./lib/client/index.d.ts",
      "require": "./lib/client/index.js",
      "import": "./lib/client/index.mjs",
      "default": "./lib/client/index.js"
    },
    "./context": {
      "types": "./lib/context.d.ts",
      "require": "./lib/context.js",
      "import": "./lib/context.mjs",
      "default": "./lib/context.js"
    }
  },
  "typesVersions": {
    "*": {
      "metrics": [
        "lib/metrics"
      ],
      "beta": [
        "lib/beta"
      ],
      "registry": [
        "lib/registry"
      ],
      "tracing": [
        "lib/tracing"
      ],
      "logging": [
        "lib/logging"
      ],
      "config": [
        "lib/config"
      ],
      "runtime": [
        "lib/runtime"
      ],
      "schema": [
        "lib/schema"
      ],
      "formats": [
        "lib/formats"
      ],
      "retriever": [
        "lib/retriever"
      ],
      "embedder": [
        "lib/embedder"
      ],
      "evaluator": [
        "lib/evaluator"
      ],
      "model": [
        "lib/model"
      ],
      "model/middleware": [
        "lib/middleware"
      ],
      "extract": [
        "lib/extract"
      ],
      "testing": [
        "lib/testing"
      ],
      "tool": [
        "lib/tool"
      ],
      "plugin": [
        "lib/plugin"
      ],
      "beta/client": [
        "lib/client/index"
      ],
      "context": [
        "lib/context"
      ]
    }
  },
  "scripts": {
    "check": "tsc",
    "compile": "tsup-node",
    "build:clean": "rimraf ./lib",
    "build": "npm-run-all build:clean check compile",
    "build:watch": "tsup-node --watch",
    "test": "node --import tsx --test tests/*_test.ts",
    "test:watch": "node --watch --import tsx --test tests/*_test.ts"
  }
}