{
  "name": "pubnub",
  "version": "11.0.1",
  "author": "PubNub <support@pubnub.com>",
  "description": "Publish & Subscribe Real-time Messaging with PubNub",
  "scripts": {
    "build": "npm run build:node && npm run build:web",
    "build:web": "rollup -c ./rollup.config.js --bundleConfigAsCjs",
    "build:node": "tsc -p tsconfig.json && npm run build:node-types",
    "build:node-types": "ts-node ./.scripts/types-aggregate.ts --ts-config=./tsconfig.json --package=PubNub --working-dir=./lib/types --input=./lib/types/node/index.d.ts --output=./lib/types",
    "test": "npm run test:web && npm run test:node",
    "test:web": "karma start karma/web.config.cjs",
    "test:web:shared-worker": "karma start karma/shared-worker.config.js",
    "test:node": "TS_NODE_PROJECT='./tsconfig.json' mocha --project tsconfig.mocha.json",
    "clean": "rimraf lib dist upload",
    "lint": "eslint \"src/**/*\" --config .eslintrc.cjs",
    "test:snippets": "tsc --project docs-snippets/tsconfig.json --noEmit",
    "ci": "npm run clean && npm run build && npm run lint && npm run test",
    "ci:web": "npm run clean && npm run build:web && npm run lint && npm run test:web && npm run test:web:shared-worker",
    "ci:node": "npm run clean && npm run build:node && npm run lint && npm run test:node",
    "test:feature:objectsv2:node": "NODE_ENV=test TS_NODE_PROJECT='./tsconfig.json' mocha --project tsconfig.mocha.json --require tsx --no-config --reporter spec test/dist/objectsv2.test.ts",
    "test:feature:fileupload:node": "NODE_ENV=test TS_NODE_PROJECT='./tsconfig.json' mocha --project tsconfig.mocha.json --require tsx --no-config --reporter spec test/feature/file_upload.node.test.ts",
    "test:contract": "npm run test:contract:prepare && npm run test:contract:start",
    "test:contract:prepare": "rimraf test/specs && git clone --branch master --depth 1 git@github.com:pubnub/sdk-specifications.git test/specs",
    "test:contract:specific": "TS_NODE_PROJECT='./test/contract/tsconfig.json' cucumber-js --require test/contract/definitions/grant.ts dist/contract/contract/features --tags '@featureSet=eventEngine and @contract=subscribeReceivingRecovery and not @na=js'",
    "test:contract:start": "cucumber-js -p default --tags '@featureSet=access and @contract=grantAllPermissions and not @na=js and not @skip'",
    "test:contract:beta": "cucumber-js -p default --tags 'not @na=js and @beta and not @skip'",
    "contract:refresh": "rimraf dist/contract && git clone --branch master git@github.com:pubnub/service-contract-mock.git dist/contract && npm install --prefix dist/contract && npm run refresh-files --prefix dist/contract",
    "contract:server": "npm start --prefix dist/contract consumer",
    "contract:build": "cd test/contract && tsc",
    "contract:test": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags 'not @na=js and not @beta'",
    "contract:test-beta": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags 'not @na=js and @beta'",
    "contract:test-access": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags '@featureSet=access and not @na=js and not @beta'",
    "contract:test-objectsV2": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags '@featureSet=objectsV2 and not @na=js and not @beta'",
    "contract:test-access-beta": "cucumber-js --require dist/cucumber dist/contract/contract/features --tags '@featureSet=access and not @na=js and @beta'"
  },
  "main": "./lib/node/index.js",
  "types": "./lib/types/index.d.ts",
  "react-native": "./lib/react_native/index.js",
  "metro": "./lib/react_native/index.js",
  "nativescript": "./lib/nativescript/index.js",
  "browser": "./dist/web/pubnub.min.js",
  "repository": {
    "type": "git",
    "url": "git://github.com/pubnub/javascript.git"
  },
  "keywords": [
    "cloud",
    "publish",
    "subscribe",
    "websockets",
    "comet",
    "bosh",
    "xmpp",
    "real-time",
    "messaging"
  ],
  "dependencies": {
    "agentkeepalive": "^3.5.2",
    "buffer": "^6.0.3",
    "cbor-js": "^0.1.0",
    "cbor-sync": "^1.0.4",
    "fast-text-encoding": "^1.0.6",
    "fflate": "^0.8.2",
    "form-data": "^4.0.4",
    "lil-uuid": "^0.1.1",
    "node-fetch": "^2.7.0",
    "proxy-agent": "^6.3.0",
    "react-native-url-polyfill": "^2.0.0"
  },
  "overrides": {
    "basic-ftp": "5.3.1"
  },
  "devDependencies": {
    "@rollup/plugin-commonjs": "^25.0.7",
    "@rollup/plugin-json": "^6.1.0",
    "@rollup/plugin-node-resolve": "^15.2.3",
    "@rollup/plugin-replace": "^5.0.5",
    "@rollup/plugin-terser": "^0.4.4",
    "@rollup/plugin-typescript": "^11.1.6",
    "@types/cbor-js": "^0.1.1",
    "@types/chai": "^4.3.14",
    "@types/chai-as-promised": "^7.1.8",
    "@types/expect": "^24.3.0",
    "@types/fast-text-encoding": "^1.0.3",
    "@types/lil-uuid": "^0.1.3",
    "@types/mocha": "^9.1.0",
    "@types/nock": "^9.3.1",
    "@types/node-fetch": "^2.6.11",
    "@types/sinon": "^17.0.3",
    "@types/text-encoding": "^0.0.39",
    "@types/underscore": "^1.11.15",
    "@types/wtfnode": "^0.7.3",
    "@typescript-eslint/eslint-plugin": "^8.12.2",
    "@typescript-eslint/parser": "^8.12.2",
    "chai": "^4.4.1",
    "chai-as-promised": "^7.1.1",
    "chai-nock": "^1.3.0",
    "commander": "^12.1.0",
    "cucumber-tsflow": "^4.4.4",
    "es6-shim": "^0.35.8",
    "eslint": "^8.57.0",
    "eslint-plugin-mocha": "^10.4.1",
    "eslint-plugin-prettier": "^5.1.3",
    "js-yaml": "^3.13.1",
    "karma": "6.4.3",
    "karma-chai": "^0.1.0",
    "karma-chrome-launcher": "^3.1.0",
    "karma-mocha": "^2.0.1",
    "karma-sinon-chai": "^2.0.2",
    "karma-sourcemap-loader": "^0.3.8",
    "karma-spec-reporter": "0.0.32",
    "karma-webpack": "^5.0.1",
    "mocha": "10.4.0",
    "nock": "^14.0.3",
    "prettier": "^3.2.5",
    "process": "^0.11.10",
    "rimraf": "^3.0.2",
    "rollup": "4.22.4",
    "rollup-plugin-gzip": "^3.1.2",
    "rollup-plugin-string": "^3.0.0",
    "sinon": "^7.5.0",
    "sinon-chai": "^3.3.0",
    "source-map-support": "^0.5.21",
    "ts-loader": "^9.5.2",
    "ts-mocha": "^10.0.0",
    "ts-node": "^10.9.2",
    "tsx": "^4.7.1",
    "typescript": "^5.4.5",
    "underscore": "^1.9.2",
    "util": "^0.12.5",
    "webpack": "^5.99.9",
    "why-is-node-running": "^3.2.2",
    "wtfnode": "^0.10.0"
  },
  "license": "SEE LICENSE IN LICENSE",
  "engine": {
    "node": ">=18"
  }
}
