{
  "name": "@privacy-pool-core/contracts",
  "version": "0.1.0",
  "description": "Solidity smart contracts for the Privacy Pool protocol",
  "repository": "https://github.com/defi-wonderland/privacy-pool-core",
  "license": "Apache-2.0",
  "author": "Wonderland",
  "scripts": {
    "assignrole:sepolia": "bash -c 'source .env && forge script script/Entrypoint.s.sol:AssignRole --account $SEPOLIA_DEPLOYER_NAME --rpc-url $SEPOLIA_RPC -vv $0'",
    "build": "forge build",
    "build:optimized": "FOUNDRY_PROFILE=optimized forge build",
    "coverage": "forge coverage --report summary --report lcov --match-path 'test/unit/*'",
    "deploy:protocol:chiado": "bash -c 'source .env && forge script script/Deploy.s.sol:GnosisChiado --verify --account DEPLOYER --rpc-url $GNOSIS_CHIADO_RPC --sender $DEPLOYER_ADDRESS --slow -vv $0'",
    "deploy:protocol:gnosis": "bash -c 'source .env && forge script script/Deploy.s.sol:Gnosis --verify --account DEPLOYER --rpc-url $GNOSIS_RPC --sender $DEPLOYER_ADDRESS --slow -vv $0'",
    "deploy:protocol:mainnet": "bash -c 'source .env && forge script script/Deploy.s.sol:EthereumMainnet --verify --account DEPLOYER --rpc-url $ETHEREUM_MAINNET_RPC --sender $DEPLOYER_ADDRESS --slow -vv $0'",
    "deploy:protocol:sepolia": "bash -c 'source .env && forge script script/Deploy.s.sol:EthereumSepolia --verify --account DEPLOYER --rpc-url $ETHEREUM_SEPOLIA_RPC --sender $DEPLOYER_ADDRESS --slow -vv $0'",
    "lint:check": "yarn lint:sol && forge fmt --check",
    "lint:fix": "sort-package-json && forge fmt && yarn lint:sol --fix",
    "lint:natspec": "npx @defi-wonderland/natspec-smells --config natspec-smells.config.js",
    "lint:sol": "solhint 'src/**/*.sol' 'script/**/*.sol' 'test/**/*.sol'",
    "prepare": "husky",
    "test": "forge test -vvv",
    "test:fuzz": "medusa fuzz",
    "test:integration": "forge test --match-contract Integration -vv --ffi",
    "test:symbolic": "echo 'update this yarn script when symbolic testing is implemented'",
    "test:unit": "forge test --match-contract Unit -vvv",
    "test:unit:deep": "FOUNDRY_FUZZ_RUNS=5000 yarn test:unit",
    "updateroot:sepolia": "bash -c 'source .env && forge script script/Entrypoint.s.sol:UpdateRoot --ffi --account $SEPOLIA_POSTMAN --rpc-url $SEPOLIA_RPC -vv $0'"
  },
  "lint-staged": {
    "*.{js,css,md,ts,sol}": "forge fmt",
    "(src|test|script)/**/*.sol": "yarn lint:sol",
    "package.json": "sort-package-json"
  },
  "dependencies": {
    "@0xbow/privacy-pools-core-sdk": "0.1.15",
    "@openzeppelin/contracts": "5.1.0",
    "@openzeppelin/contracts-upgradeable": "5.0.2",
    "@openzeppelin/foundry-upgrades": "0.3.6",
    "@zk-kit/lean-imt": "2.2.2",
    "@zk-kit/lean-imt.sol": "2.0.0",
    "poseidon-solidity": "0.0.5",
    "solc": "0.8.28",
    "viem": "^2.23.2"
  },
  "devDependencies": {
    "@commitlint/cli": "19.3.0",
    "@commitlint/config-conventional": "19.2.2",
    "@defi-wonderland/natspec-smells": "1.1.3",
    "@types/node": "^22.10.10",
    "circomlibjs": "^0.1.7",
    "forge-std": "github:foundry-rs/forge-std#1.9.6",
    "halmos-cheatcodes": "github:a16z/halmos-cheatcodes#c0d8655",
    "husky": ">=9",
    "lint-staged": ">=10",
    "solhint-community": "4.0.0",
    "sort-package-json": "2.10.0",
    "ts-node": "^10.9.2",
    "typescript": "^5.7.3"
  }
}
