chromium/extensions/common/api/web_request_internal.json

// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

[
  {
    "namespace": "webRequestInternal",
    "description": "none",
    "compiler_options": {
      "implemented_in": "extensions/browser/api/web_request/web_request_api.h"
    },
    "types": [
      {
        "id": "AddEventListenerOptions",
        "type": "string",
        "enum": ["requestHeaders", "responseHeaders", "blocking", "asyncBlocking", "requestBody", "extraHeaders"]
      }
    ],
    "functions": [
      {
        "name": "addEventListener",
        "type": "function",
        "description": "Used internally to implement the special form of addListener for the webRequest events.",
        "parameters": [
          {"type": "function", "name": "callback"},
          {
            "$ref": "webRequest.RequestFilter",
            "name": "filter",
            "description": "A set of filters that restricts the events that will be sent to this listener."
          },
          {
            "type": "array",
            "optional": true,
            "name": "extraInfoSpec",
            "description": "Array of extra information that should be passed to the listener function.",
            "items": {
              "$ref": "AddEventListenerOptions"
            }
          },
          {"type": "string", "name": "eventName"},
          {"type": "string", "name": "subEventName"},
          {"type": "integer", "name": "webViewInstanceId"}
        ]
      },
      {
        "name": "eventHandled",
        "type": "function",
        "description": "Used internally to send a response for a blocked event.",
        "parameters": [
          {"type": "string", "name": "eventName"},
          {"type": "string", "name": "subEventName"},
          {"type": "string", "name": "requestId"},
          {"type": "integer", "name": "webViewInstanceId"},
          {
            "$ref": "webRequest.BlockingResponse",
            "optional": true,
            "name": "response"
          }
        ]
      }
    ]
  }
]