// 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": "browsingData",
    "description": "Use the <code>chrome.browsingData</code> API to remove browsing data from a user's local profile.",
    "types": [
      {
        "id": "RemovalOptions",
        "type": "object",
        "description": "Options that determine exactly what data will be removed.",
        "properties": {
          "since": {
            "type": "number",
            "optional": true,
            "description": "Remove data accumulated on or after this date, represented in milliseconds since the epoch (accessible via the <code>getTime</code> method of the JavaScript <code>Date</code> object). If absent, defaults to 0 (which would remove all browsing data)."
          },
          "originTypes": {
            "type": "object",
            "optional": true,
            "description": "An object whose properties specify which origin types ought to be cleared. If this object isn't specified, it defaults to clearing only \"unprotected\" origins. Please ensure that you <em>really</em> want to remove application data before adding 'protectedWeb' or 'extensions'.",
            "properties": {
              "unprotectedWeb": {
                "type": "boolean",
                "optional": true,
                "description": "Normal websites."
              },
              "protectedWeb": {
                "type": "boolean",
                "optional": true,
                "description": "Websites that have been installed as hosted applications (be careful!)."
              },
              "extension": {
                "type": "boolean",
                "optional": true,
                "description": "Extensions and packaged applications a user has installed (be _really_ careful!)."
              }
            }
          },
          "origins": {
            "type": "array",
            "items": {"type": "string"},
            "optional": true,
            "minItems": 1,
            "description": "When present, only data for origins in this list is deleted. Only supported for cookies, storage and cache. Cookies are cleared for the whole registrable domain."
          },
          "excludeOrigins": {
            "type": "array",
            "items": {"type": "string"},
            "optional": true,
            "description": "When present, data for origins in this list is excluded from deletion. Can't be used together with <code>origins</code>. Only supported for cookies, storage and cache.  Cookies are excluded for the whole registrable domain."
          }
        }
      },
      {
        "id": "DataTypeSet",
        "type": "object",
        "description": "A set of data types. Missing data types are interpreted as <code>false</code>.",
        "properties": {
          "appcache": {
            "type": "boolean",
            "optional": true,
            "description": "Websites' appcaches."
          },
          "cache": {
            "type": "boolean",
            "optional": true,
            "description": "The browser's cache."
          },
          "cacheStorage": {
            "type": "boolean",
            "optional": true,
            "description": "Cache storage"
          },
          "cookies": {
            "type": "boolean",
            "optional": true,
            "description": "The browser's cookies."
          },
          "downloads": {
            "type": "boolean",
            "optional": true,
            "description": "The browser's download list."
          },
          "fileSystems": {
            "type": "boolean",
            "optional": true,
            "description": "Websites' file systems."
          },
          "formData": {
            "type": "boolean",
            "optional": true,
            "description": "The browser's stored form data."
          },
          "history": {
            "type": "boolean",
            "optional": true,
            "description": "The browser's history."
          },
          "indexedDB": {
            "type": "boolean",
            "optional": true,
            "description": "Websites' IndexedDB data."
          },
          "localStorage": {
            "type": "boolean",
            "optional": true,
            "description": "Websites' local storage data."
          },
          "serverBoundCertificates": {
            "type": "boolean",
            "optional": true,
            "deprecated": "Support for server-bound certificates has been removed. This data type will be ignored.",
            "description": "Server-bound certificates."
          },
          "passwords": {
            "type": "boolean",
            "optional": true,
            "deprecated": "Support for password deletion through extensions has been removed. This data type will be ignored.",
            "description": "Stored passwords."
          },
          "pluginData": {
            "type": "boolean",
            "optional": true,
            "deprecated": "Support for Flash has been removed. This data type will be ignored.",
            "description": "Plugins' data."
          },
          "serviceWorkers": {
            "type": "boolean",
            "optional": true,
            "description": "Service Workers."
          },
          "webSQL": {
            "type": "boolean",
            "optional": true,
            "description": "Websites' WebSQL data."
          }
        }
      }
    ],
    "functions": [
      {
        "name": "settings",
        "description": "Reports which types of data are currently selected in the 'Clear browsing data' settings UI.  Note: some of the data types included in this API are not available in the settings UI, and some UI settings control more than one data type listed here.",
        "type": "function",
        "parameters": [],
        "returns_async": {
          "name": "callback",
          "parameters": [
            {
              "name": "result",
              "type": "object",
              "properties": {
                "options": {
                  "$ref": "RemovalOptions"
                },
                "dataToRemove": {
                  "$ref": "DataTypeSet",
                  "description": "All of the types will be present in the result, with values of <code>true</code> if they are both selected to be removed and permitted to be removed, otherwise <code>false</code>."
                },
                "dataRemovalPermitted": {
                  "$ref": "DataTypeSet",
                  "description": "All of the types will be present in the result, with values of <code>true</code> if they are permitted to be removed (e.g., by enterprise policy) and <code>false</code> if not."
                }
              }
            }
          ]
        }
      },
      {
        "name": "remove",
        "description": "Clears various types of browsing data stored in a user's profile.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          },
          {
            "name": "dataToRemove",
            "$ref": "DataTypeSet",
            "description": "The set of data types to remove."
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when deletion has completed.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeAppcache",
        "description": "Clears websites' appcache data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' appcache data has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeCache",
        "description": "Clears the browser's cache.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's cache has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeCacheStorage",
        "description": "Clears websites' cache storage data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' cache storage has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeCookies",
        "description": "Clears the browser's cookies and server-bound certificates modified within a particular timeframe.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's cookies and server-bound certificates have been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeDownloads",
        "description": "Clears the browser's list of downloaded files (<em>not</em> the downloaded files themselves).",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's list of downloaded files has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeFileSystems",
        "description": "Clears websites' file system data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' file systems have been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeFormData",
        "description": "Clears the browser's stored form data (autofill).",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's form data has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeHistory",
        "description": "Clears the browser's history.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's history has cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeIndexedDB",
        "description": "Clears websites' IndexedDB data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' IndexedDB data has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeLocalStorage",
        "description": "Clears websites' local storage data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' local storage has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removePluginData",
        "description": "Clears plugins' data.",
        "deprecated": "Support for Flash has been removed. This function has no effect.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when plugins' data has been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removePasswords",
        "description": "Clears the browser's stored passwords.",
        "deprecated": "Support for password deletion through extensions has been removed. This function has no effect.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when the browser's passwords have been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeServiceWorkers",
        "description": "Clears websites' service workers.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' service workers have been cleared.",
          "optional": true,
          "parameters": []
        }
      },
      {
        "name": "removeWebSQL",
        "description": "Clears websites' WebSQL data.",
        "type": "function",
        "parameters": [
          {
            "$ref": "RemovalOptions",
            "name": "options"
          }
        ],
        "returns_async": {
          "name": "callback",
          "description": "Resolves when websites' WebSQL databases have been cleared.",
          "optional": true,
          "parameters": []
        }
      }
    ]
  }
]
