{
  "name": "mastercache",
  "type": "module",
  "version": "1.0.1-beta.1.1",
  "description": "Multi-tier cache module for Node.js. Redis, Upstash, CloudfareKV, File, in-memory and others drivers",
  "author": "Timothy Mugo <timothymugo@tausiapp.com>",
  "license": "MIT",
  "keywords": [
    "caching",
    "redis",
    "in-memory",
    "cache",
    "multi-tier",
    "tiered"
  ],
  "exports": {
    ".": {
      "types": "./build/index.d.ts",
      "import": "./build/index.js",
      "require": "./build/index.cjs"
    },
    "./drivers/redis": {
      "types": "./build/src/drivers/redis.d.ts",
      "import": "./build/src/drivers/redis.js",
      "require": "./build/src/drivers/redis.cjs"
    },
    "./drivers/memory": {
      "types": "./build/src/drivers/memory.d.ts",
      "import": "./build/src/drivers/memory.js",
      "require": "./build/src/drivers/memory.cjs"
    },
    "./drivers/file": {
      "types": "./build/src/drivers/file/file.d.ts",
      "import": "./build/src/drivers/file/file.js",
      "require": "./build/src/drivers/file/file.cjs"
    },
    "./drivers/dynamodb": {
      "types": "./build/src/drivers/dynamodb.d.ts",
      "import": "./build/src/drivers/dynamodb.js",
      "require": "./build/src/drivers/dynamodb.cjs"
    },
    "./drivers/base_driver": {
      "types": "./build/src/drivers/base_driver.d.ts",
      "import": "./build/src/drivers/base_driver.js",
      "require": "./build/src/drivers/base_driver.cjs"
    },
    "./drivers/database": {
      "types": "./build/src/drivers/database/database.d.ts",
      "import": "./build/src/drivers/database/database.js",
      "require": "./build/src/drivers/database/database.cjs"
    },
    "./drivers/knex": {
      "types": "./build/src/drivers/database/adapters/knex.d.ts",
      "import": "./build/src/drivers/database/adapters/knex.js",
      "require": "./build/src/drivers/database/adapters/knex.cjs"
    },
    "./drivers/kysely": {
      "types": "./build/src/drivers/database/adapters/kysely.d.ts",
      "import": "./build/src/drivers/database/adapters/kysely.js",
      "require": "./build/src/drivers/database/adapters/kysely.cjs"
    },
    "./drivers/orchid": {
      "types": "./build/src/drivers/database/adapters/orchid.d.ts",
      "import": "./build/src/drivers/database/adapters/orchid.js",
      "require": "./build/src/drivers/database/adapters/orchid.cjs"
    },
    "./types": {
      "types": "./build/src/types/main.d.ts",
      "import": "./build/src/types/main.js",
      "require": "./build/src/types/main.cjs"
    },
    "./plugins/*": {
      "types": "./build/plugins/*.d.ts",
      "import": "./build/plugins/*.js",
      "require": "./build/plugins/*.cjs"
    },
    "./test_suite": {
      "types": "./build/src/test_suite.d.ts",
      "import": "./build/src/test_suite.js",
      "require": "./build/src/test_suite.cjs"
    }
  },
  "main": "build/index.js",
  "files": [
    "build",
    "src"
  ],
  "peerDependencies": {
    "@aws-sdk/client-dynamodb": "^3.705.0",
    "ioredis": "^5.4.1",
    "knex": "^3.0.1",
    "kysely": "^0.27.4",
    "orchid-orm": "^1.38.5"
  },
  "peerDependenciesMeta": {
    "@aws-sdk/client-dynamodb": {
      "optional": true
    },
    "ioredis": {
      "optional": true
    },
    "knex": {
      "optional": true
    },
    "kysely": {
      "optional": true
    },
    "orchid-orm": {
      "optional": true
    }
  },
  "dependencies": {
    "@boringnode/bus": "^0.7.0",
    "@lukeed/ms": "^2.0.2",
    "@types/lodash": "^4.17.13",
    "async-mutex": "^0.5.0",
    "cacheable": "^1.8.5",
    "chunkify": "^5.0.0",
    "hexoid": "^2.0.0",
    "lodash": "^4.17.21",
    "lru-cache": "^11.0.2",
    "p-timeout": "^6.1.3",
    "typescript-log": "^2.0.0"
  },
  "devDependencies": {
    "@aws-sdk/client-dynamodb": "^3.705.0",
    "@keyv/redis": "^4.0.2",
    "@keyv/tiered": "^2.0.2",
    "@types/better-sqlite3": "^7.6.12",
    "@types/pg": "^8.11.10",
    "better-sqlite3": "^11.6.0",
    "cache-manager": "^6.3.0",
    "cache-manager-ioredis-yet": "^2.1.2",
    "dayjs": "^1.11.13",
    "defu": "^6.1.4",
    "emittery": "^1.0.3",
    "eslint": "^9.16.0",
    "ioredis": "^5.4.1",
    "keyv": "^5.2.1",
    "knex": "^3.1.0",
    "kysely": "^0.27.4",
    "memfs": "^4.14.1",
    "mysql2": "^3.11.5",
    "orchid-orm": "^1.38.2",
    "p-event": "^6.0.1",
    "pg": "^8.13.1",
    "pino": "^9.5.0",
    "pino-loki": "^2.4.0",
    "sqlite3": "^5.1.7",
    "vitest": "^2.1.8",
    "@mastercache/vitest-config": "1.0.0",
    "@mastercache/eslint-config": "0.0.1"
  },
  "publishConfig": {
    "access": "public",
    "tag": "latest"
  },
  "c8": {
    "reporter": [
      "text",
      "html"
    ],
    "exclude": [
      "bin",
      "tests/**",
      "test_helpers/**",
      "factories/**"
    ]
  },
  "tsup": {
    "entry": [
      "./index.ts",
      "./src/types/main.ts",
      "./src/drivers/*.ts",
      "./src/drivers/database/database.ts",
      "./src/drivers/database/adapters/*.ts",
      "./src/drivers/file/file.ts",
      "./src/drivers/file/cleaner-worker.js",
      "./plugins/*.ts",
      "./src/test_suite.ts"
    ],
    "outDir": "./build",
    "clean": true,
    "format": "esm",
    "dts": true,
    "target": "esnext"
  },
  "release-it": {
    "git": {
      "commitMessage": "chore(release): masterache@${version}",
      "tagAnnotation": "release ${version}",
      "tagName": "masterache@${version}"
    },
    "github": {
      "release": true,
      "releaseName": "masterache@${version}",
      "web": true
    }
  },
  "scripts": {
    "clean": "del-cli build",
    "copy:templates": "copyfiles \"stubs/**/*.stub\" build",
    "typecheck": "tsc --noEmit",
    "lint": "eslint .",
    "lint:fix": "eslint --fix .",
    "quick:test": "cross-env NODE_NO_WARNINGS=1 node --enable-source-maps --loader=ts-node/esm bin/test.ts",
    "pretest": "pnpm lint",
    "test": "c8 pnpm quick:test",
    "build": "pnpm clean && tsup-node ",
    "postbuild": "pnpm copy:templates",
    "release": "pnpm build && pnpm release-it",
    "version": "pnpm build",
    "checks": "pnpm lint && pnpm typecheck"
  }
}