{
  "repo": "tidbcloud/novu",
  "binary": "novu-widget",
  "binary_path": "apps/widget/package.json",
  "dependencies": {
    "Runtime NovuWidget.serve": {
      "infrastructure": {},
      "services": [
        {
          "name": "novu-api",
          "target_repo": "tidbcloud/novu",
          "target_interface": "Notification API endpoints",
          "operation_type": "http_client",
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Call notification APIs for widget data",
              "trigger": "Render and update the embeddable widget",
              "implementation": "Widget frontend runtime"
            }
          ]
        },
        {
          "name": "novu-ws",
          "target_repo": "tidbcloud/novu",
          "target_interface": "Realtime websocket updates",
          "operation_type": "websocket_client",
          "conditions": [
            "Always"
          ],
          "operations": [
            {
              "operation": "Subscribe to realtime notification updates",
              "trigger": "Keep the widget synchronized",
              "implementation": "Widget frontend websocket runtime"
            }
          ]
        }
      ]
    }
  }
}
