{
  "name": "@ggui-ai/protocol",
  "version": "0.20.0",
  "sideEffects": [
    "./dist/schemas/sync-check.js",
    "./dist/validation/ajv-runtime.js"
  ],
  "description": "ggui protocol types — events, renders, WebSocket, MCP, LLM models",
  "license": "Apache-2.0",
  "keywords": [
    "ggui",
    "protocol",
    "mcp",
    "generative-ui",
    "agent",
    "websocket"
  ],
  "files": [
    "README.md",
    "dist",
    "!**/*.test.ts",
    "!**/*.test.tsx",
    "!**/*.test-d.ts",
    "!**/*.test-d.tsx",
    "!**/*.test.js",
    "!**/*.test.d.ts",
    "!**/*.test.d.ts.map",
    "!**/*.test.js.map",
    "!**/*.test-d.js",
    "!**/*.test-d.d.ts",
    "!**/__tests__/**",
    "!**/*.spec.ts",
    "!**/*.spec.tsx"
  ],
  "type": "module",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js",
      "require": "./dist/index.js",
      "default": "./dist/index.js"
    },
    "./content-hash": {
      "types": "./dist/validation/content-hash.d.ts",
      "import": "./dist/validation/content-hash.js",
      "require": "./dist/validation/content-hash.js",
      "default": "./dist/validation/content-hash.js"
    },
    "./blueprint-key": {
      "types": "./dist/registry/blueprint-key.d.ts",
      "import": "./dist/registry/blueprint-key.js",
      "require": "./dist/registry/blueprint-key.js",
      "default": "./dist/registry/blueprint-key.js"
    },
    "./props-schema-hash": {
      "types": "./dist/registry/props-schema-hash.d.ts",
      "import": "./dist/registry/props-schema-hash.js",
      "require": "./dist/registry/props-schema-hash.js",
      "default": "./dist/registry/props-schema-hash.js"
    },
    "./transport/websocket": {
      "types": "./dist/transport/websocket.d.ts",
      "import": "./dist/transport/websocket.js",
      "require": "./dist/transport/websocket.js",
      "default": "./dist/transport/websocket.js"
    },
    "./integrations/mcp-apps": {
      "types": "./dist/integrations/mcp-apps.d.ts",
      "import": "./dist/integrations/mcp-apps.js",
      "require": "./dist/integrations/mcp-apps.js",
      "default": "./dist/integrations/mcp-apps.js"
    },
    "./integrations/theme-binding": {
      "types": "./dist/integrations/theme-binding.d.ts",
      "import": "./dist/integrations/theme-binding.js",
      "require": "./dist/integrations/theme-binding.js",
      "default": "./dist/integrations/theme-binding.js"
    },
    "./wire": {
      "types": "./dist/wire.d.ts",
      "import": "./dist/wire.js",
      "require": "./dist/wire.js",
      "default": "./dist/wire.js"
    },
    "./version": {
      "types": "./dist/version.d.ts",
      "import": "./dist/version.js",
      "require": "./dist/version.js",
      "default": "./dist/version.js"
    },
    "./errors/version-mismatch": {
      "types": "./dist/errors/version-mismatch.d.ts",
      "import": "./dist/errors/version-mismatch.js",
      "require": "./dist/errors/version-mismatch.js",
      "default": "./dist/errors/version-mismatch.js"
    }
  },
  "devDependencies": {
    "@types/node": "^22.0.0",
    "typescript": "^5.0.0",
    "vitest": "^3.2.6"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/ggui-ai/ggui.git",
    "directory": "packages/protocol"
  },
  "homepage": "https://github.com/ggui-ai/ggui/tree/main/packages/protocol",
  "bugs": {
    "url": "https://github.com/ggui-ai/ggui/issues"
  },
  "dependencies": {
    "@modelcontextprotocol/ext-apps": "^1.7.2",
    "ajv": "^8.17.1",
    "ajv-formats": "^3.0.1",
    "canonicalize": "^2.0.0",
    "zod": "^4.3.6"
  },
  "publishConfig": {
    "access": "public"
  },
  "engines": {
    "node": ">=22.0.0"
  },
  "author": "ggui contributors <hello@ggui.ai>",
  "scripts": {
    "build": "rm -rf dist.staging-$$ && tsc --outDir dist.staging-$$ && node ../scripts/fix-esm-imports.mjs dist.staging-$$ && node ../scripts/atomic-swap.mjs dist.staging-$$ dist",
    "dev": "tsc --watch",
    "typecheck": "tsc --noEmit",
    "sync-check": "tsx src/schemas/sync-check.ts",
    "test": "vitest run",
    "test:watch": "vitest"
  }
}