{
  "name": "firebase-tools",
  "version": "9.23.3",
  "description": "Command-Line Interface for Firebase",
  "main": "./lib/index.js",
  "bin": {
    "firebase": "./lib/bin/firebase.js"
  },
  "scripts": {
    "build": "tsc",
    "build:watch": "tsc --watch",
    "clean": "rimraf lib dev",
    "format": "npm run format:ts && npm run format:other",
    "format:other": "npm run lint:other -- --write",
    "format:ts": "npm run lint:ts -- --fix --quiet",
    "generate:auth-api": "ts-node scripts/gen-auth-api-spec.ts",
    "generate:json-schema": "typescript-json-schema --strictNullChecks --required --noExtraProps src/firebaseConfig.ts FirebaseConfig > schema/firebase-config.json",
    "lint": "npm run lint:ts && npm run lint:other",
    "lint:changed-files": "ts-node ./scripts/lint-changed-files.ts",
    "lint:other": "prettier --check '**/*.{md,yaml,yml}'",
    "lint:quiet": "npm run lint:ts -- --quiet && npm run lint:other",
    "lint:ts": "eslint --config .eslintrc.js --ext .ts,.js .",
    "mocha": "nyc mocha 'src/test/**/*.{ts,js}'",
    "prepare": "npm run clean && npm run build -- --build tsconfig.publish.json",
    "test": "npm run lint:quiet && npm run test:compile && npm run mocha",
    "test:client-integration": "./scripts/client-integration-tests/run.sh",
    "test:compile": "tsc --project tsconfig.compile.json",
    "test:emulator": "./scripts/emulator-tests/run.sh",
    "test:extensions-deploy": "./scripts/extensions-deploy-tests/run.sh",
    "test:extensions-emulator": "./scripts/extensions-emulator-tests/run.sh",
    "test:hosting": "./scripts/hosting-tests/run.sh",
    "test:triggers-end-to-end": "./scripts/triggers-end-to-end-tests/run.sh",
    "test:storage-emulator-integration": "./scripts/storage-emulator-integration/run.sh"
  },
  "files": [
    "lib",
    "schema",
    "standalone",
    "templates"
  ],
  "repository": {
    "type": "git",
    "url": "https://github.com/firebase/firebase-tools.git"
  },
  "keywords": [
    "cdn",
    "cli",
    "ssl",
    "cloud",
    "hosting",
    "firebase",
    "realtime",
    "websockets",
    "synchronization"
  ],
  "preferGlobal": true,
  "engines": {
    "node": ">= 10.13"
  },
  "author": "Firebase (https://firebase.google.com/)",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/firebase/firebase-tools/issues"
  },
  "homepage": "https://github.com/firebase/firebase-tools",
  "publishConfig": {
    "registry": "https://wombat-dressing-room.appspot.com"
  },
  "nyc": {
    "require": [
      "ts-node/register"
    ],
    "reporter": [
      "lcovonly",
      "text"
    ],
    "report-dir": "./.coverage",
    "extension": [
      ".js",
      ".ts"
    ],
    "exclude": [
      "src/test/**/*"
    ]
  },
  "dependencies": {
    "@google-cloud/pubsub": "^2.7.0",
    "@types/archiver": "^5.1.0",
    "JSONStream": "^1.2.1",
    "abort-controller": "^3.0.0",
    "ajv": "^6.12.6",
    "archiver": "^5.0.0",
    "body-parser": "^1.19.0",
    "chokidar": "^3.0.2",
    "cjson": "^0.3.1",
    "cli-color": "^1.2.0",
    "cli-table": "0.3.11",
    "commander": "^4.0.1",
    "configstore": "^5.0.1",
    "cors": "^2.8.5",
    "cross-env": "^5.1.3",
    "cross-spawn": "^7.0.1",
    "csv-streamify": "^3.0.4",
    "dotenv": "^6.1.0",
    "exegesis": "^2.5.7",
    "exegesis-express": "^2.0.0",
    "exit-code": "^1.0.2",
    "express": "^4.16.4",
    "filesize": "^6.1.0",
    "fs-extra": "^5.0.0",
    "glob": "^7.1.2",
    "google-auth-library": "^6.1.3",
    "inquirer": "~6.3.1",
    "js-yaml": "^3.13.1",
    "jsonwebtoken": "^8.5.1",
    "leven": "^3.1.0",
    "lodash": "^4.17.21",
    "marked": "^0.7.0",
    "marked-terminal": "^3.3.0",
    "mime": "^2.5.2",
    "minimatch": "^3.0.4",
    "morgan": "^1.10.0",
    "node-fetch": "^2.6.1",
    "open": "^6.3.0",
    "ora": "^3.4.0",
    "portfinder": "^1.0.23",
    "progress": "^2.0.3",
    "proxy-agent": "^5.0.0",
    "request": "^2.87.0",
    "rimraf": "^3.0.0",
    "semver": "^5.7.1",
    "superstatic": "^7.1.0",
    "tar": "^4.3.0",
    "tcp-port-used": "^1.0.1",
    "tmp": "0.0.33",
    "triple-beam": "^1.3.0",
    "tweetsodium": "0.0.5",
    "universal-analytics": "^0.4.16",
    "unzipper": "^0.10.10",
    "update-notifier": "^5.1.0",
    "uuid": "^8.3.2",
    "winston": "^3.0.0",
    "winston-transport": "^4.4.0",
    "ws": "^7.2.3"
  },
  "devDependencies": {
    "@google/events": "^5.1.1",
    "@manifoldco/swagger-to-ts": "^2.0.0",
    "@types/body-parser": "^1.17.0",
    "@types/chai": "^4.2.12",
    "@types/chai-as-promised": "^7.1.3",
    "@types/cjson": "^0.5.0",
    "@types/cli-color": "^0.3.29",
    "@types/cli-table": "^0.3.0",
    "@types/configstore": "^4.0.0",
    "@types/cors": "^2.8.10",
    "@types/cross-spawn": "^6.0.1",
    "@types/dotenv": "^6.1.0",
    "@types/express": "^4.17.0",
    "@types/express-serve-static-core": "^4.17.8",
    "@types/fs-extra": "^5.0.5",
    "@types/glob": "^7.1.1",
    "@types/inquirer": "^6.0.3",
    "@types/js-yaml": "^3.12.2",
    "@types/jsonwebtoken": "^8.3.8",
    "@types/lodash": "^4.14.149",
    "@types/marked": "^0.6.5",
    "@types/mocha": "^8.2.0",
    "@types/multer": "^1.4.3",
    "@types/node": "^10.17.50",
    "@types/node-fetch": "^2.5.7",
    "@types/progress": "^2.0.3",
    "@types/puppeteer": "^5.4.2",
    "@types/request": "^2.48.1",
    "@types/rimraf": "^2.0.3",
    "@types/semver": "^6.0.0",
    "@types/sinon": "^9.0.10",
    "@types/sinon-chai": "^3.2.2",
    "@types/supertest": "^2.0.6",
    "@types/tar": "^4.0.0",
    "@types/tcp-port-used": "^1.0.0",
    "@types/tmp": "^0.1.0",
    "@types/triple-beam": "^1.3.0",
    "@types/unzipper": "^0.10.0",
    "@types/uuid": "^8.3.1",
    "@types/winston": "^2.4.4",
    "@types/ws": "^7.2.3",
    "@typescript-eslint/eslint-plugin": "^4.12.0",
    "@typescript-eslint/parser": "^4.12.0",
    "chai": "^4.2.0",
    "chai-as-promised": "^7.1.1",
    "eslint": "^7.17.0",
    "eslint-config-google": "^0.14.0",
    "eslint-config-prettier": "^7.1.0",
    "eslint-plugin-jsdoc": "^30.7.13",
    "eslint-plugin-prettier": "^3.3.1",
    "firebase": "^7.24.0",
    "firebase-admin": "^9.4.2",
    "firebase-functions": "^3.15.0",
    "google-discovery-to-swagger": "^2.1.0",
    "mocha": "^8.2.1",
    "nock": "^13.0.5",
    "nyc": "^15.1.0",
    "openapi-merge": "^1.0.23",
    "prettier": "^2.2.1",
    "proxy": "^1.0.2",
    "puppeteer": "^9.0.0",
    "sinon": "^9.2.3",
    "sinon-chai": "^3.6.0",
    "source-map-support": "^0.5.9",
    "supertest": "^3.3.0",
    "swagger2openapi": "^6.0.3",
    "ts-node": "^9.1.1",
    "typescript": "^3.9.5",
    "typescript-json-schema": "^0.50.1"
  }
}
