{
  "name": "react-hooks-global-states",
  "version": "15.0.16",
  "description": "A package to easily handle global state across your React components using hooks.",
  "main": "./bundle.js",
  "types": "./index.d.ts",
  "sideEffects": false,
  "exports": {
    ".": {
      "import": "./bundle.js",
      "require": "./bundle.js",
      "types": "./index.d.ts"
    },
    "./createContext": {
      "import": "./createContext.js",
      "require": "./createContext.js",
      "types": "./createContext.d.ts"
    },
    "./GlobalStore": {
      "import": "./GlobalStore.js",
      "require": "./GlobalStore.js",
      "types": "./GlobalStore.d.ts"
    },
    "./GlobalStoreAbstract": {
      "import": "./GlobalStoreAbstract.js",
      "require": "./GlobalStoreAbstract.js",
      "types": "./GlobalStoreAbstract.d.ts"
    },
    "./createGlobalState": {
      "import": "./createGlobalState.js",
      "require": "./createGlobalState.js",
      "types": "./createGlobalState.d.ts"
    },
    "./types": {
      "import": "./types.js",
      "require": "./types.js",
      "types": "./types.d.ts"
    },
    "./isRecord": {
      "import": "./isRecord.js",
      "require": "./isRecord.js",
      "types": "./isRecord.d.ts"
    },
    "./shallowCompare": {
      "import": "./shallowCompare.js",
      "require": "./shallowCompare.js",
      "types": "./shallowCompare.d.ts"
    },
    "./throwWrongKeyOnActionCollectionConfig": {
      "import": "./throwWrongKeyOnActionCollectionConfig.js",
      "require": "./throwWrongKeyOnActionCollectionConfig.js",
      "types": "./throwWrongKeyOnActionCollectionConfig.d.ts"
    },
    "./uniqueId": {
      "import": "./uniqueId.js",
      "require": "./uniqueId.js",
      "types": "./uniqueId.d.ts"
    },
    "./actions": {
      "import": "./actions.js",
      "require": "./actions.js",
      "types": "./actions.d.ts"
    }
  },
  "files": [
    "*.js",
    "*.d.ts"
  ],
  "scripts": {
    "format": "prettier --write .  --log-level silent && yarn lint:fix",
    "test": "yarn build && yarn jest",
    "test:logs": "sh -c 'yarn build && yarn jest \"$@\" 2>&1 | grep -i \"console\" -A 2' --",
    "test:debug:no-watch": "node --inspect-brk node_modules/.bin/jest --no-watchman --runInBand",
    "test:debug": "node --inspect-brk node_modules/.bin/jest --watch --runInBand",
    "test:quick": "yarn test --no-coverage --maxWorkers=4 -c --no-watchman -u",
    "test:coverage": "yarn test --maxWorkers=4 -c --colors --no-watchman --verbose --coverage",
    "build": "yarn ts-check && yarn clean && webpack --config webpack.config.js && yarn ts-check:tests",
    "prepare": "yarn format && npm run build && yarn test:quick",
    "version": "npm run format && yarn build && yarn jest && git add -A",
    "postversion": "git push && git push --tags",
    "lint": "eslint . --max-warnings=0",
    "lint:fix": "eslint . --fix --max-warnings=0",
    "clean": "find . -maxdepth 1 -type f \\( -name '*.js' -o -name '*.d.ts' \\) ! -name 'webpack.config.js' ! -name 'eslint.config.mts' -exec rm {} + && rm -rf coverage",
    "ts-check": "tsc -p tsconfig.json --noEmit",
    "ts-check:tests": "tsc -p tsconfig.test.json --noEmit"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/johnny-quesada-developer/react-hooks-global-states.git"
  },
  "keywords": [
    "preact",
    "react",
    "redux",
    "state",
    "useState",
    "useContext",
    "global-state",
    "context",
    "typescript",
    "react-native"
  ],
  "author": "Johnny Quesada",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/johnny-quesada-developer/react-hooks-global-states/issues"
  },
  "homepage": "https://github.com/johnny-quesada-developer/react-hooks-global-states#readme",
  "devDependencies": {
    "@eslint/js": "^9.39.1",
    "@testing-library/dom": "^10.4.0",
    "@testing-library/react": "^16.3.0",
    "@types/jest": "^29.5.11",
    "@types/react": "^18.2.45",
    "@types/react-dom": "^18.2.18",
    "@typescript-eslint/eslint-plugin": "^4.9.1",
    "@typescript-eslint/parser": "^4.9.1",
    "clean-webpack-plugin": "^4.0.0",
    "easy-cancelable-promise": "^1.0.1",
    "eslint": "^9.39.1",
    "eslint-config-airbnb": "^18.2.1",
    "eslint-plugin-import": "^2.22.1",
    "eslint-plugin-jsx-a11y": "^6.4.1",
    "eslint-plugin-react": "^7.37.5",
    "eslint-plugin-react-hooks": "^4.2.0",
    "jest": "^29.7.0",
    "jest-environment-jsdom": "^30.0.4",
    "jiti": "^2.6.1",
    "prettier": "^3.6.2",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "ts-jest": "^29.1.1",
    "ts-loader": "^9.5.1",
    "tslib": "^2.6.2",
    "typescript": "^5.8.2",
    "typescript-eslint": "^8.46.3",
    "webpack": "^5.76.3",
    "webpack-cli": "^5.0.1"
  },
  "dependencies": {
    "json-storage-formatter": "^3.0.2"
  },
  "peerDependencies": {
    "json-storage-formatter": "^3.0.2",
    "react": ">=18.0.0",
    "react-dom": ">=18.0.0"
  },
  "peerDependenciesMeta": {
    "react": {
      "optional": false
    },
    "json-storage-formatter": {
      "optional": false
    }
  }
}
