{
  "name": "@adonisjs/limiter",
  "description": "Rate limiting package for AdonisJS framework",
  "version": "2.3.3",
  "type": "module",
  "files": [
    "build",
    "!build/bin",
    "!build/tests"
  ],
  "exports": {
    ".": "./build/index.js",
    "./limiter_provider": "./build/providers/limiter_provider.js",
    "./services/main": "./build/services/main.js",
    "./stores/*": "./build/src/stores/*.js",
    "./types": "./build/src/types.js"
  },
  "scripts": {
    "pretest": "npm run lint && del-cli coverage",
    "test": "npm run test:pg && npm run test:mysql && mkdir coverage/tmp && cp -r coverage/*/tmp/. coverage/tmp && c8 report",
    "test:pg": "cross-env DB=pg c8 --reporter=json --report-dir=coverage/pg npm run quick:test",
    "test:mysql": "cross-env DB=mysql c8 --reporter=json --report-dir=coverage/mysql npm run quick:test",
    "clean": "del-cli build",
    "typecheck": "tsc --noEmit",
    "copy:templates": "copyfiles \"stubs/**/*.stub\" --up=\"1\" build",
    "precompile": "npm run lint && npm run clean",
    "compile": "tsup-node && tsc --emitDeclarationOnly --declaration",
    "postcompile": "npm run copy:templates",
    "build": "npm run compile",
    "prepublishOnly": "npm run build",
    "lint": "eslint",
    "format": "prettier --write .",
    "release": "release-it",
    "version": "npm run build",
    "quick:test": "cross-env NODE_DEBUG=adonisjs:limiter node --import=ts-node-maintained/register/esm --enable-source-maps bin/test.ts"
  },
  "devDependencies": {
    "@adonisjs/assembler": "^7.8.2",
    "@adonisjs/core": "^6.17.0",
    "@adonisjs/eslint-config": "^2.0.0-beta.7",
    "@adonisjs/i18n": "^2.2.0",
    "@adonisjs/lucid": "^21.5.1",
    "@adonisjs/prettier-config": "^1.4.0",
    "@adonisjs/redis": "^9.1.0",
    "@adonisjs/tsconfig": "^1.4.0",
    "@japa/assert": "^4.0.0",
    "@japa/expect-type": "^2.0.2",
    "@japa/file-system": "^2.3.1",
    "@japa/runner": "^3.1.4",
    "@release-it/conventional-changelog": "^9.0.3",
    "@swc/core": "^1.10.1",
    "@types/node": "^22.10.2",
    "@types/sinon": "^17.0.3",
    "better-sqlite3": "^11.7.0",
    "c8": "^10.1.3",
    "copyfiles": "^2.4.1",
    "cross-env": "^7.0.3",
    "del-cli": "^6.0.0",
    "dotenv": "^16.4.7",
    "eslint": "^9.17.0",
    "luxon": "^3.5.0",
    "mysql2": "^3.11.5",
    "pg": "^8.13.1",
    "prettier": "^3.4.2",
    "release-it": "^17.10.0",
    "sinon": "^19.0.2",
    "timekeeper": "^2.3.1",
    "ts-node-maintained": "^10.9.4",
    "tsup": "^8.3.5",
    "typescript": "^5.7.2"
  },
  "dependencies": {
    "rate-limiter-flexible": "^5.0.4"
  },
  "peerDependencies": {
    "@adonisjs/core": "^6.12.1",
    "@adonisjs/lucid": "^20.1.0 || ^21.0.0",
    "@adonisjs/redis": "^8.0.1 || ^9.0.0"
  },
  "peerDependenciesMeta": {
    "@adonisjs/lucid": {
      "optional": true
    },
    "@adonisjs/redis": {
      "optional": true
    }
  },
  "author": "virk,adonisjs",
  "license": "MIT",
  "homepage": "https://github.com/adonisjs/limiter#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/adonisjs/limiter.git"
  },
  "bugs": {
    "url": "https://github.com/adonisjs/limiter/issues"
  },
  "keywords": [
    "adonis",
    "rate-limiter"
  ],
  "publishConfig": {
    "access": "public",
    "provenance": true
  },
  "tsup": {
    "entry": [
      "./index.ts",
      "./providers/limiter_provider.ts",
      "./services/main.ts",
      "./src/stores/*.ts",
      "./src/types.ts"
    ],
    "outDir": "./build",
    "clean": true,
    "format": "esm",
    "dts": false,
    "sourcemap": false,
    "target": "esnext"
  },
  "release-it": {
    "git": {
      "requireCleanWorkingDir": true,
      "requireUpstream": true,
      "commitMessage": "chore(release): ${version}",
      "tagAnnotation": "v${version}",
      "push": true,
      "tagName": "v${version}"
    },
    "github": {
      "release": true
    },
    "npm": {
      "publish": true,
      "skipChecks": true
    },
    "plugins": {
      "@release-it/conventional-changelog": {
        "preset": {
          "name": "angular"
        }
      }
    }
  },
  "c8": {
    "reporter": [
      "text",
      "html"
    ],
    "exclude": [
      "tests/**"
    ]
  },
  "prettier": "@adonisjs/prettier-config"
}
