[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAlertAction",
        "members": [
          {
            "name": "action",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "title",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "iconURL",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "navigate",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "windowsSystemActivationType",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "opaqueRelaunchData",
            "readonly": true,
            "type": "string"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAlertNotification",
        "members": [
          {
            "args": [
              {
                "name": "aName",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aImageURL",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aTitle",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aText",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aTextClickable",
                "optional": true,
                "type": "boolean"
              },
              {
                "name": "aCookie",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aDir",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aLang",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aData",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aPrincipal",
                "optional": true,
                "type": "nsIPrincipal"
              },
              {
                "name": "aInPrivateBrowsing",
                "optional": true,
                "type": "boolean"
              },
              {
                "name": "aRequireInteraction",
                "optional": true,
                "type": "boolean"
              },
              {
                "name": "aSilent",
                "optional": true,
                "type": "boolean"
              },
              {
                "name": "aVibrate",
                "optional": true,
                "type": "u32[]"
              }
            ],
            "iid_is": null,
            "name": "init",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aAlertNotification",
                "optional": false,
                "type": "nsIAlertNotification"
              }
            ],
            "iid_is": null,
            "name": "initWithObject",
            "type": "void"
          },
          {
            "name": "id",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "name",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "countId",
            "readonly": true,
            "type": "u64"
          },
          {
            "name": "imageURL",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "image",
            "readonly": false,
            "type": "imgIContainer"
          },
          {
            "name": "title",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "text",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "textClickable",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "cookie",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "dir",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "lang",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "data",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "principal",
            "readonly": true,
            "type": "nsIPrincipal"
          },
          {
            "name": "URI",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "inPrivateBrowsing",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "requireInteraction",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "silent",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "vibrate",
            "readonly": true,
            "type": "u32[]"
          },
          {
            "name": "actions",
            "readonly": false,
            "type": "nsIAlertAction[]"
          },
          {
            "name": "actionable",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "source",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "origin",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "opaqueRelaunchData",
            "readonly": false,
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getAction",
            "type": "nsIAlertAction"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAlertCallbacks",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertShow",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aAction",
                "optional": true,
                "type": "nsIAlertAction"
              }
            ],
            "iid_is": null,
            "name": "onAlertClick",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertDismissedFromForeground",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertClosed",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertFinished",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertSettings",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onAlertDisable",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAlertsService",
        "members": [
          {
            "args": [
              {
                "name": "aAlert",
                "optional": false,
                "type": "nsIAlertNotification"
              },
              {
                "name": "aAlertListener",
                "optional": true,
                "type": "nsIObserver"
              }
            ],
            "iid_is": null,
            "name": "showAlert",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aAlert",
                "optional": false,
                "type": "nsIAlertNotification"
              },
              {
                "name": "aAlertCallbacks",
                "optional": false,
                "type": "nsIAlertCallbacks"
              }
            ],
            "iid_is": null,
            "name": "showAlertWithCallbacks",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aContextClosed",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "closeAlert",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getHistory",
            "type": "string[]"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "teardown",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "pbmTeardown",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "isFullscreen",
            "type": "boolean"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAlertsDoNotDisturb",
        "members": [
          {
            "name": "manualDoNotDisturb",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "suppressForScreenSharing",
            "readonly": false,
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "toolkit/components/alerts/nsIAlertsService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]