{
  "name": "otpauth",
  "version": "9.4.1",
  "description": "One Time Password (HOTP/TOTP) library for Node.js, Deno, Bun and browsers",
  "keywords": [
    "otp",
    "hotp",
    "totp",
    "one time password",
    "2fa",
    "2 factor",
    "two factor",
    "two-factor",
    "2step",
    "2 step",
    "two step",
    "two-step",
    "auth",
    "authenticator",
    "google authenticator"
  ],
  "author": "Héctor Molinero Fernández <hector@molinero.dev>",
  "license": "MIT",
  "homepage": "https://github.com/hectorm/otpauth",
  "repository": {
    "type": "git",
    "url": "https://github.com/hectorm/otpauth.git"
  },
  "bugs": {
    "url": "https://github.com/hectorm/otpauth/issues"
  },
  "funding": "https://github.com/hectorm/otpauth?sponsor=1",
  "type": "module",
  "types": "./dist/otpauth.d.ts",
  "main": "./dist/otpauth.node.cjs",
  "browser": "./dist/otpauth.esm.js",
  "exports": {
    ".": {
      "types": {
        "import": "./dist/otpauth.d.ts",
        "require": "./dist/otpauth.d.cts"
      },
      "bun": "./dist/otpauth.esm.js",
      "deno": "./dist/otpauth.esm.js",
      "node": {
        "import": "./dist/otpauth.node.mjs",
        "require": "./dist/otpauth.node.cjs"
      },
      "default": "./dist/otpauth.esm.js"
    },
    "./dist/*": {
      "types": {
        "import": "./dist/otpauth.d.ts",
        "require": "./dist/otpauth.d.cts"
      },
      "default": "./dist/*"
    }
  },
  "files": [
    "dist/"
  ],
  "scripts": {
    "all": "run-s build docs lint test",
    "build": "run-s build:clean build:types build:compile",
    "build:clean": "rimraf ./dist/",
    "build:compile": "rollup -c",
    "build:types": "run-s build:types:clean build:types:compile",
    "build:types:clean": "rimraf ./types/",
    "build:types:compile": "tsc -p ./src/",
    "docs": "run-s docs:clean docs:compile",
    "docs:clean": "rimraf ./docs/",
    "docs:compile": "typedoc ./src/index.js --readme none --out ./docs/",
    "lint": "run-s lint:eslint lint:prettier lint:tsc",
    "lint:eslint": "eslint --max-warnings 0 ./",
    "lint:prettier": "prettier --list-different ./",
    "lint:tsc": "tsc --noEmit",
    "format": "run-s format:eslint format:prettier",
    "format:eslint": "eslint --fix ./",
    "format:prettier": "prettier --write ./",
    "test": "run-s test:node test:deno test:bun test:browser",
    "test:node": "run-s test:node:esm test:node:cjs",
    "test:node:esm": "run-s test:node:esm:unmin test:node:esm:min",
    "test:node:esm:unmin": "node ./test/node.test.mjs",
    "test:node:esm:min": "node ./test/node.test.min.mjs",
    "test:node:cjs": "run-s test:node:cjs:unmin test:node:cjs:min",
    "test:node:cjs:unmin": "node ./test/node.test.cjs",
    "test:node:cjs:min": "node ./test/node.test.min.cjs",
    "test:deno": "run-s --npm-path deno test:deno:esm",
    "test:deno:esm": "run-s --npm-path deno test:deno:esm:unmin test:deno:esm:min",
    "test:deno:esm:unmin": "deno test --no-npm --allow-read=./test/,./dist/ ./test/deno.test.mjs",
    "test:deno:esm:min": "deno test --no-npm --allow-read=./test/,./dist/ ./test/deno.test.min.mjs",
    "test:bun": "run-s --npm-path bun test:bun:esm",
    "test:bun:esm": "run-s --npm-path bun test:bun:esm:unmin test:bun:esm:min",
    "test:bun:esm:unmin": "bun test ./test/bun.test.mjs",
    "test:bun:esm:min": "bun test ./test/bun.test.min.mjs ",
    "test:quickjs": "run-s test:quickjs:esm",
    "test:quickjs:esm": "run-s test:quickjs:esm:unmin test:quickjs:esm:min",
    "test:quickjs:esm:unmin": "qjs ./test/quickjs.test.mjs",
    "test:quickjs:esm:min": "qjs ./test/quickjs.test.min.mjs ",
    "test:browser": "run-s test:browser:chromium test:browser:firefox test:browser:webkit",
    "test:browser:chromium": "run-s test:browser:chromium:umd",
    "test:browser:chromium:umd": "run-s test:browser:chromium:umd:unmin test:browser:chromium:umd:min",
    "test:browser:chromium:umd:unmin": "node ./test/browser.test.mjs chromium",
    "test:browser:chromium:umd:min": "node ./test/browser.test.min.mjs chromium",
    "test:browser:firefox": "run-s test:browser:firefox:umd",
    "test:browser:firefox:umd": "run-s test:browser:firefox:umd:unmin test:browser:firefox:umd:min",
    "test:browser:firefox:umd:unmin": "node ./test/browser.test.mjs firefox",
    "test:browser:firefox:umd:min": "node ./test/browser.test.min.mjs firefox",
    "test:browser:webkit": "run-s test:browser:webkit:umd",
    "test:browser:webkit:umd": "run-s test:browser:webkit:umd:unmin test:browser:webkit:umd:min",
    "test:browser:webkit:umd:unmin": "node ./test/browser.test.mjs webkit",
    "test:browser:webkit:umd:min": "node ./test/browser.test.min.mjs webkit",
    "version": "run-s all version:jsr version:git",
    "version:jsr": "node ./scripts/jsr.mjs",
    "version:git": "git add -A ./jsr.json ./types/ ./dist/ ./docs/"
  },
  "dependencies": {
    "@noble/hashes": "1.8.0"
  },
  "devDependencies": {
    "@eslint/core": "~0.15.2",
    "@eslint/js": "~9.33.0",
    "@rollup/plugin-node-resolve": "~16.0.1",
    "@rollup/plugin-replace": "~6.0.2",
    "@rollup/plugin-swc": "~0.4.0",
    "@rollup/plugin-terser": "~0.4.4",
    "@rollup/plugin-virtual": "~3.0.2",
    "@swc/core": "~1.13.3",
    "@types/eslint": "~9.6.1",
    "@types/eslint-config-prettier": "~6.11.3",
    "@types/node": "~24.2.1",
    "chai": "~5.2.1",
    "eslint": "~9.33.0",
    "eslint-config-prettier": "~10.1.8",
    "globals": "~16.3.0",
    "mocha": "~11.7.1",
    "npm-run-all2": "~8.0.4",
    "playwright": "~1.54.2",
    "prettier": "~3.6.2",
    "rimraf": "~6.0.1",
    "rollup": "~4.46.2",
    "rollup-plugin-dts": "~6.2.1",
    "typedoc": "~0.28.10",
    "typescript": "~5.9.2"
  }
}
