{
  "name": "balena-sdk",
  "version": "23.2.10",
  "description": "The Balena JavaScript SDK",
  "type": "commonjs",
  "main": "index.js",
  "types": "index.d.ts",
  "browser": {
    "index.js": "./es2017/index.js",
    "es2017/util/settings-client.js": "./es2017/util/settings-client.browser.js",
    "es2018/util/settings-client.js": "./es2018/util/settings-client.browser.js",
    "es2017/util/asset-helpers.js": "./es2017/util/asset-helpers.browser.js",
    "es2018/util/asset-helpers.js": "./es2018/util/asset-helpers.browser.js",
    "handlebars": "handlebars/dist/cjs/handlebars.js"
  },
  "homepage": "https://github.com/balena-io/balena-sdk",
  "repository": {
    "type": "git",
    "url": "git://github.com/balena-io/balena-sdk.git"
  },
  "files": [
    "es2017/",
    "es2018/",
    "typings/",
    "index.js",
    "index.d.ts"
  ],
  "keywords": [
    "sdk",
    "resin",
    "resin.io",
    "balena",
    "balena.io",
    "iot",
    "devices"
  ],
  "directories": {
    "test": "tests"
  },
  "scripts": {
    "clean": "rimraf es2017 es2018 node_modules/.cache/webpack",
    "test:fast": "npm run lint-fix; npm run build-es2017:fast && npm run test:node",
    "test": "([ \"$GITHUB_WORKFLOW\" = 'Flowzone' ] && [ \"$GITHUB_JOB\" = 'npm_test' ] && echo \"Skipping 'npm test' in flowzone in favor of the custom test action!\") || (npm run build && npm run test:all)",
    "test:all": "npm run test:dev && npm run test:ts-js && npm run test:typings && npm run test:mjs-imports && npm run test:node && npm run test:browser",
    "test:node": "mocha",
    "test:browser": "mockttp -c karma start",
    "test:dev": "tsc --noEmit --project ./tsconfig.dev.json",
    "test:ts-js": "tsc --noEmit --project ./tsconfig.js.json",
    "test:typings": "tsc --project ./typing_tests/tsconfig.json",
    "test:mjs-imports": "node mjs_tests/index.mjs",
    "build-browser": "webpack --mode=production --config=./webpack.config.js",
    "analyze-bundle": "npm run build-es2017 -- --config=./webpack.bundle-analyzer-config.js && webpack-bundle-analyzer ./es2017/stats.json --default-sizes stat",
    "build-es2017:fast": "rimraf es2017 && tsc --target es2017 --outDir es2017 && node scripts/inject-version.js --buildDir es2017",
    "build-es2017": "npm run build-es2017:fast && npm run build-browser -- --output-path es2017",
    "build-es2018": "rimraf es2018 && tsc --target es2018 --outDir es2018 && node scripts/inject-version.js --buildDir es2018 && npm run build-browser -- --output-path es2018",
    "build": "npm run clean && npm run build-es2017 && npm run lint && npm run build-es2018 && npm run docs",
    "docs": "node scripts/jsd2md.js",
    "ci": "npm test && catch-uncommitted",
    "lint": "balena-lint -e js -e ts typing_tests typings src tests mjs_tests scripts/inject-version.js webpack.config.js webpack.bundle-analyzer-config.js",
    "lint-fix": "balena-lint -e js -e ts --fix typing_tests typings src tests mjs_tests scripts/inject-version.js webpack.config.js webpack.bundle-analyzer-config.js",
    "prepack": "npm run build",
    "watch": "npm run build && watch \"npm run lint\" \"src\" \"tests\"",
    "prepare": "husky"
  },
  "author": "Balena Ltd. <hello@balena.io>",
  "license": "Apache-2.0",
  "engines": {
    "node": "^22.18.0 || >= 24.0.0"
  },
  "devDependencies": {
    "@balena/env-parsing": "^1.2.6",
    "@balena/lint": "^9.3.12",
    "@types/chai": "^4.3.20",
    "@types/lodash": "^4.17.23",
    "@types/memoizee": "^0.4.12",
    "@types/mime": "^3.0.4",
    "@types/mocha": "^10.0.10",
    "@types/ndjson": "^2.0.4",
    "@types/sinon": "^21.0.0",
    "assert": "^2.1.0",
    "balena-config-karma": "^4.0.2",
    "buffer": "^6.0.3",
    "catch-uncommitted": "^2.0.0",
    "chai": "^4.5.0",
    "crypto-browserify": "^3.12.1",
    "domain-browser": "^5.0.0",
    "dotenv": "^17.0.0",
    "husky": "^9.1.7",
    "js-polyfills": "^0.1.43",
    "jsdoc-to-markdown": "^9.1.3",
    "karma": "^6.4.4",
    "lint-staged": "^17.0.0",
    "lodash": "^4.17.23",
    "mjs-mocha": "^3.0.0",
    "mocha": "^11.7.5",
    "mocha.parallel": "^0.15.6",
    "mockttp": "^3.17.1",
    "os-browserify": "^0.3.0",
    "otplib": "^12.0.1",
    "process": "^0.11.10",
    "querystring-es3": "^0.2.1",
    "rimraf": "^6.0.0",
    "rindle": "^1.3.6",
    "sinon": "^22.0.0",
    "stream-browserify": "^3.0.0",
    "temp": "^0.9.4",
    "terser-webpack-plugin": "^5.3.16",
    "tmp": "^0.2.5",
    "ts-node": "^10.9.2",
    "ts-toolbelt": "^9.6.0",
    "typescript": "^6.0.2",
    "url": "^0.11.4",
    "util": "^0.12.5",
    "watch": "^1.0.2",
    "webpack": "^5.104.1",
    "webpack-bundle-analyzer": "^4.10.2",
    "webpack-cli": "^6.0.1"
  },
  "dependencies": {
    "@balena/abstract-sql-to-typescript": "^5.1.1",
    "@balena/es-version": "^1.0.0",
    "@types/json-schema": "^7.0.9",
    "@types/node": "^22.19.7",
    "balena-auth": "^6.1.1",
    "balena-errors": "^5.0.0",
    "balena-hup-action-utils": "~7.0.0",
    "balena-register-device": "^9.0.4",
    "balena-request": "^14.1.6",
    "balena-semver": "^4.0.0",
    "balena-settings-client": "^6.0.0",
    "handlebars": "^4.7.7",
    "memoizee": "^0.4.15",
    "mime": "^3.0.0",
    "ndjson": "^2.0.0",
    "p-throttle": "^4.1.1",
    "pinejs-client-core": "^8.4.0",
    "tslib": "^2.1.0"
  },
  "versionist": {
    "publishedAt": "2026-06-16T15:41:39.142Z"
  }
}
