{
  "name": "graphql-upload-ts",
  "version": "2.2.0",
  "description": "TypeScript-first middleware and Upload scalar for GraphQL multipart requests (file uploads) with support for Apollo Server, Express, Koa, and more.",
  "keywords": [
    "graphql",
    "graphql-upload",
    "graphql-upload-typescript",
    "file-upload",
    "multipart",
    "multipart-request",
    "apollo-server",
    "express",
    "koa",
    "typescript",
    "upload-scalar",
    "graphql-middleware",
    "file-streaming",
    "graphql-yoga",
    "nestjs",
    "esm",
    "commonjs",
    "bun"
  ],
  "homepage": "https://github.com/meabed/graphql-upload-ts#readme",
  "bugs": {
    "url": "https://github.com/meabed/graphql-upload-ts/issues",
    "email": "mo@meabed.com"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/meabed/graphql-upload-ts.git"
  },
  "funding": {
    "type": "github",
    "url": "https://github.com/sponsors/meabed"
  },
  "license": "MIT",
  "author": {
    "name": "Mohamed Meabed",
    "email": "mo@meabed.com",
    "url": "https://meabed.com"
  },
  "contributors": [
    {
      "name": "Mohamed Meabed",
      "email": "mo@meabed.com",
      "url": "https://meabed.com"
    }
  ],
  "sideEffects": false,
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.mjs",
      "require": "./dist/index.js",
      "default": "./dist/index.mjs"
    },
    "./fs-capacitor": {
      "types": "./dist/fs-capacitor.d.ts",
      "import": "./dist/fs-capacitor.mjs",
      "require": "./dist/fs-capacitor.js",
      "default": "./dist/fs-capacitor.mjs"
    },
    "./graphql-upload": {
      "types": "./dist/graphql-upload.d.ts",
      "import": "./dist/graphql-upload.mjs",
      "require": "./dist/graphql-upload.js",
      "default": "./dist/graphql-upload.mjs"
    },
    "./graphql-upload-express": {
      "types": "./dist/graphql-upload-express.d.ts",
      "import": "./dist/graphql-upload-express.mjs",
      "require": "./dist/graphql-upload-express.js",
      "default": "./dist/graphql-upload-express.mjs"
    },
    "./graphql-upload-koa": {
      "types": "./dist/graphql-upload-koa.d.ts",
      "import": "./dist/graphql-upload-koa.mjs",
      "require": "./dist/graphql-upload-koa.js",
      "default": "./dist/graphql-upload-koa.mjs"
    },
    "./ignore-stream": {
      "types": "./dist/ignore-stream.d.ts",
      "import": "./dist/ignore-stream.mjs",
      "require": "./dist/ignore-stream.js",
      "default": "./dist/ignore-stream.mjs"
    },
    "./process-request": {
      "types": "./dist/process-request.d.ts",
      "import": "./dist/process-request.mjs",
      "require": "./dist/process-request.js",
      "default": "./dist/process-request.mjs"
    },
    "./upload": {
      "types": "./dist/upload.d.ts",
      "import": "./dist/upload.mjs",
      "require": "./dist/upload.js",
      "default": "./dist/upload.mjs"
    },
    "./upload-errors": {
      "types": "./dist/upload-errors.d.ts",
      "import": "./dist/upload-errors.mjs",
      "require": "./dist/upload-errors.js",
      "default": "./dist/upload-errors.mjs"
    },
    "./validation": {
      "types": "./dist/validation.d.ts",
      "import": "./dist/validation.mjs",
      "require": "./dist/validation.js",
      "default": "./dist/validation.mjs"
    },
    "./package.json": "./package.json"
  },
  "main": "./dist/index.js",
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.ts",
  "files": [
    "dist",
    "src",
    "!src/**/*.test.ts",
    "!src/**/*.spec.ts",
    "README.md",
    "CHANGELOG.md",
    "LICENSE"
  ],
  "scripts": {
    "analyze": "size-limit --why",
    "build": "rm -rf dist coverage *.tsbuildinfo && rollup -c rollup.config.js && tsc",
    "build:rollup": "rollup -c rollup.config.js",
    "build:types": "tsc",
    "changeset": "changeset",
    "clean": "rm -rf dist coverage *.tsbuildinfo",
    "dev": "rollup -c rollup.config.js --watch",
    "example:apollo": "cd examples/apollo && tsc -p . && node ./dist/examples/apollo/index.js",
    "example:express": "cd examples/express && tsc -p . && node ./dist/examples/express/graphql-http.js",
    "format": "biome format --write --no-errors-on-unmatched",
    "format:check": "biome format",
    "lint": "biome check",
    "lint:fix": "biome check --write",
    "prepare": "if [ -z \"$CI\" ] && [ -e .git ] && [ -x ./node_modules/.bin/husky ]; then ./node_modules/.bin/husky; fi",
    "prepublishOnly": "biome format && biome check && tsc --noEmit && jest --coverage && rm -rf dist coverage *.tsbuildinfo && rollup -c rollup.config.js && tsc",
    "release:check": "node ./scripts/release/check-changeset.mjs",
    "release:publish": "node ./scripts/release/publish.mjs",
    "release:verify": "yarn typecheck && yarn build && yarn test",
    "release:version:beta": "node ./scripts/release/version-beta.mjs",
    "release:version:stable": "node ./scripts/release/version-stable.mjs",
    "size": "size-limit",
    "test": "jest --coverage",
    "test:bun": "bun test --timeout 30000",
    "test:bun:coverage": "bun test --coverage --timeout 30000",
    "test:coverage": "jest --coverage --coverageReporters=html",
    "test:jest": "jest --coverage",
    "test:watch": "jest --watch",
    "typecheck": "tsc --noEmit",
    "validate": "biome format && biome check && tsc --noEmit && jest --coverage",
    "validate:bun": "biome format && biome check && tsc --noEmit && bun test --timeout 30000"
  },
  "lint-staged": {
    "*.{ts,tsx,js,jsx,json,md}": [
      "biome format --write",
      "biome check --write"
    ]
  },
  "dependencies": {
    "busboy": "^1.6.0",
    "http-errors": "^2.0.1",
    "object-path": "^0.11.8"
  },
  "devDependencies": {
    "@changesets/cli": "2.31.0",
    "@biomejs/biome": "^2.4.13",
    "@rollup/plugin-commonjs": "^29.0.2",
    "@rollup/plugin-node-resolve": "^16.0.3",
    "@rollup/plugin-typescript": "^12.3.0",
    "@size-limit/preset-small-lib": "^12.1.0",
    "@types/busboy": "1.5.4",
    "@types/express": "5.0.6",
    "@types/jest": "30.0.0",
    "@types/koa": "3.0.2",
    "@types/node": "^25.6.0",
    "@types/object-path": "0.11.4",
    "express": "5.2.1",
    "form-data": "4.0.5",
    "form-data-encoder": "^4.1.0",
    "graphql": "16.13.2",
    "husky": "9.1.7",
    "jest": "30.3.0",
    "koa": "3.2.0",
    "lint-staged": "16.4.0",
    "node-fetch": "^3.3.2",
    "rollup": "^4.60.2",
    "size-limit": "^12.1.0",
    "ts-jest": "29.4.9",
    "ts-node": "10.9.2",
    "tslib": "^2.8.1",
    "typescript": "6.0.3"
  },
  "peerDependencies": {
    "graphql": ">=0.13.1"
  },
  "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
  "engines": {
    "node": ">=16.0.0",
    "npm": ">=7.0.0"
  },
  "engineStrict": false
}
