{
  "name": "js-bao",
  "version": "0.5.1",
  "description": "A library providing data modeling capabilities which support live updates and queries.",
  "types": "dist/index.d.ts",
  "type": "module",
  "files": [
    "dist"
  ],
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "node": {
        "import": "./dist/node.js",
        "require": "./dist/node.cjs"
      },
      "browser": {
        "import": "./dist/browser.js",
        "require": "./dist/browser.cjs"
      },
      "default": {
        "import": "./dist/index.js",
        "require": "./dist/index.cjs"
      }
    },
    "./node": {
      "types": "./dist/node.d.ts",
      "import": "./dist/node.js",
      "require": "./dist/node.cjs"
    },
    "./browser": {
      "types": "./dist/browser.d.ts",
      "import": "./dist/browser.js",
      "require": "./dist/browser.cjs"
    },
    "./cloudflare": {
      "types": "./dist/cloudflare.d.ts",
      "import": "./dist/cloudflare.js",
      "require": "./dist/cloudflare.cjs"
    },
    "./cloudflare/do": {
      "types": "./dist/cloudflare-do.d.ts",
      "import": "./dist/cloudflare-do.js",
      "require": "./dist/cloudflare-do.cjs"
    },
    "./client": {
      "types": "./dist/client.d.ts",
      "import": "./dist/client.js",
      "require": "./dist/client.cjs"
    }
  },
  "bin": {
    "js-bao-codegen": "./dist/codegen.cjs",
    "jsbao-codegen": "./dist/codegen.cjs",
    "js-bao-codegen-v2": "./dist/codegen-v2.cjs",
    "jsbao-codegen-v2": "./dist/codegen-v2.cjs"
  },
  "scripts": {
    "build": "pnpm build:cli && pnpm build:cli-v2 && pnpm codegen && rm -f dist/index.* dist/node.* dist/browser.* dist/cloudflare.* dist/cloudflare-do.* dist/client.* && pnpm build:main",
    "build:main": "pnpm build:browser && pnpm build:node && pnpm build:universal && pnpm build:cloudflare && pnpm build:cloudflare-do && pnpm build:client",
    "build:browser": "tsup src/browser.ts --format esm,cjs --dts --platform browser --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --external fs --no-splitting",
    "build:node": "tsup src/node.ts --format esm,cjs --dts --platform node --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --no-splitting",
    "build:universal": "tsup src/index.ts --format esm,cjs --dts --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --no-splitting",
    "build:cloudflare": "tsup src/cloudflare.ts --format esm,cjs --dts --platform browser --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --external fs --no-splitting",
    "build:cloudflare-do": "tsup src/cloudflare-do.ts --format esm,cjs --dts --platform neutral --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --external fs --no-splitting",
    "build:client": "tsup src/client.ts --format esm,cjs --dts --platform browser --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --external fs --no-splitting",
    "build:cli": "tsup src/cli/codegen.ts --format cjs --dts --platform node --target node18 --external commander --external typescript --external fs --external path --external util --no-splitting",
    "build:cli-v2": "tsup src/cli/codegen-v2.ts --format cjs --dts --platform node --target node18 --external commander --external typescript --external fs --external path --external util --no-splitting",
    "dev": "pnpm build:cli && concurrently \"pnpm codegen:watch\" \"pnpm dev:main\"",
    "dev:main": "concurrently \"pnpm build:browser:dev --watch\" \"pnpm build:node:dev --watch\" \"pnpm build:universal:dev --watch\"",
    "dev:simple": "pnpm build:cli && pnpm codegen && pnpm build:main --watch",
    "build:browser:dev": "tsup src/browser.ts --format esm,cjs --dts --sourcemap --platform browser --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs --external fs",
    "build:node:dev": "tsup src/node.ts --format esm,cjs --dts --sourcemap --platform node --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs",
    "build:universal:dev": "tsup src/index.ts --format esm,cjs --dts --sourcemap --external better-sqlite3 --external sql.js --external async-mutex --external ulid --external yjs",
    "codegen": "./dist/codegen.cjs --config js-bao.config.cjs || echo 'Codegen skipped (likely in consumer project)'",
    "codegen:watch": "./dist/codegen.cjs --config js-bao.config.cjs --watch",
    "codegen:consumer": "node -e \"require('child_process').spawn('./node_modules/.bin/js-bao-codegen', process.argv.slice(2), {stdio: 'inherit'})\"",
    "publish:alpha": "node scripts/publish.js --tag alpha",
    "publish:stable": "node scripts/publish.js",
    "test": "echo \"Error: no test specified\" && exit 1",
    "prepare": "pnpm build",
    "prepublishOnly": "pnpm build"
  },
  "dependencies": {
    "async-mutex": "^0.5.0",
    "smol-toml": "^1.3.1",
    "sql.js": "^1.13.0",
    "ulid": "^3.0.0"
  },
  "devDependencies": {
    "@types/better-sqlite3": "^7.6.13",
    "@types/node": "^20.17.51",
    "@types/sql.js": "^1.4.9",
    "commander": "^11.0.0",
    "concurrently": "^9.1.2",
    "tsup": "^8.0.2",
    "tsx": "^4.19.4",
    "typescript": "^5.4.5",
    "yjs": "^13.6.18"
  },
  "peerDependencies": {
    "yjs": "^13.6.18"
  },
  "optionalDependencies": {
    "better-sqlite3": "^12.6.2"
  },
  "keywords": [
    "yjs",
    "crdt",
    "orm",
    "sqljs",
    "database",
    "reactivedb",
    "nodejs",
    "browser",
    "sqlite",
    "cloudflare",
    "durable-objects",
    "workers"
  ],
  "author": "Primitive LLC",
  "license": "UNLICENSED"
}
