[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "STATE_NOT_BLOCKED",
            "value": 0
          },
          {
            "name": "STATE_SOFTBLOCKED",
            "value": 1
          },
          {
            "name": "STATE_BLOCKED",
            "value": 2
          },
          {
            "name": "STATE_MAX",
            "value": 3
          }
        ],
        "enums": [],
        "id": "nsIBlocklistService",
        "members": [
          {
            "name": "isLoaded",
            "readonly": true,
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIBlocklistService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsICrashReporter",
        "members": [
          {
            "name": "crashReporterEnabled",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "serverURL",
            "readonly": false,
            "type": "nsIURL"
          },
          {
            "name": "minidumpPath",
            "readonly": false,
            "type": "nsIFile"
          },
          {
            "args": [
              {
                "name": "id",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getMinidumpForID",
            "type": "nsIFile"
          },
          {
            "args": [
              {
                "name": "id",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getExtraFileForID",
            "type": "nsIFile"
          },
          {
            "args": [
              {
                "name": "key",
                "optional": false,
                "type": "string"
              },
              {
                "name": "data",
                "optional": false,
                "type": "any"
              }
            ],
            "iid_is": null,
            "name": "annotateCrashReport",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "key",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "removeCrashReportAnnotation",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "value",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "isAnnotationValid",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "value",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "isAnnotationAllowedForReport",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "data",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "appendAppNotesToCrashReport",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "ptr",
                "optional": false,
                "type": "u64"
              },
              {
                "name": "size",
                "optional": false,
                "type": "u64"
              }
            ],
            "iid_is": null,
            "name": "registerAppMemory",
            "type": "void"
          },
          {
            "name": "submitReports",
            "readonly": false,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "UpdateCrashEventsDir",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "saveMemoryReport",
            "type": "void"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsICrashReporter.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "TYPE_ORIENTATION",
            "value": 0
          },
          {
            "name": "TYPE_ACCELERATION",
            "value": 1
          },
          {
            "name": "TYPE_PROXIMITY",
            "value": 2
          },
          {
            "name": "TYPE_LINEAR_ACCELERATION",
            "value": 3
          },
          {
            "name": "TYPE_GYROSCOPE",
            "value": 4
          },
          {
            "name": "TYPE_LIGHT",
            "value": 5
          },
          {
            "name": "TYPE_ROTATION_VECTOR",
            "value": 6
          },
          {
            "name": "TYPE_GAME_ROTATION_VECTOR",
            "value": 7
          }
        ],
        "enums": [],
        "id": "nsIDeviceSensorData",
        "members": [
          {
            "name": "type",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "x",
            "readonly": true,
            "type": "double"
          },
          {
            "name": "y",
            "readonly": true,
            "type": "double"
          },
          {
            "name": "z",
            "readonly": true,
            "type": "double"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIDeviceSensors",
        "members": [
          {
            "args": [
              {
                "name": "aType",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aWindow",
                "optional": false,
                "type": "nsIDOMWindow"
              }
            ],
            "iid_is": null,
            "name": "hasWindowListener",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aType",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aX",
                "optional": false,
                "type": "float"
              },
              {
                "name": "aY",
                "optional": false,
                "type": "float"
              },
              {
                "name": "aZ",
                "optional": false,
                "type": "float"
              },
              {
                "name": "aW",
                "optional": false,
                "type": "float"
              }
            ],
            "iid_is": null,
            "name": "notifySensorEvent",
            "type": "void"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIDeviceSensors.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIHandlerApp",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIGIOHandlerApp",
        "members": [
          {
            "name": "id",
            "readonly": true,
            "type": "string"
          },
          {
            "args": [
              {
                "name": "fileName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "launchFile",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getMozIconURL",
            "type": "string"
          }
        ]
      },
      {
        "base": "nsIHandlerApp",
        "callable": false,
        "consts": [
          {
            "name": "EXPECTS_URIS",
            "value": 0
          },
          {
            "name": "EXPECTS_PATHS",
            "value": 1
          },
          {
            "name": "EXPECTS_URIS_FOR_NON_FILES",
            "value": 2
          }
        ],
        "enums": [],
        "id": "nsIGIOMimeApp",
        "members": [
          {
            "name": "id",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "command",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "expectsURIs",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "supportedURISchemes",
            "readonly": true,
            "type": "nsIUTF8StringEnumerator"
          },
          {
            "args": [
              {
                "name": "mimeType",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setAsDefaultForMimeType",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "extensions",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setAsDefaultForFileExtensions",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "uriScheme",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setAsDefaultForURIScheme",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIGIOService",
        "members": [
          {
            "args": [
              {
                "name": "extension",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getMimeTypeFromExtension",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aURIScheme",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getAppForURIScheme",
            "type": "nsIHandlerApp"
          },
          {
            "args": [
              {
                "name": "aURIScheme",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getAppsForURIScheme",
            "type": "nsIMutableArray"
          },
          {
            "args": [
              {
                "name": "mimeType",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getAppForMimeType",
            "type": "nsIHandlerApp"
          },
          {
            "args": [
              {
                "name": "appId",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "createHandlerAppFromAppId",
            "type": "nsIGIOHandlerApp"
          },
          {
            "args": [
              {
                "name": "cmd",
                "optional": false,
                "type": "string"
              },
              {
                "name": "appName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "createAppFromCommand",
            "type": "nsIGIOMimeApp"
          },
          {
            "args": [
              {
                "name": "cmd",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "findAppFromCommand",
            "type": "nsIGIOMimeApp"
          },
          {
            "args": [
              {
                "name": "mimeType",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getDescriptionForMimeType",
            "type": "string"
          },
          {
            "name": "isRunningUnderFlatpak",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "isRunningUnderSnap",
            "readonly": true,
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIGIOService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ],
      [
        "nsHandlerInfoAction",
        "i32"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIGeolocationUpdate",
        "members": [
          {
            "args": [
              {
                "name": "position",
                "optional": false,
                "type": "nsIDOMGeoPosition"
              }
            ],
            "iid_is": null,
            "name": "update",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "error",
                "optional": false,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "notifyError",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIGeolocationProvider",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "startup",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "callback",
                "optional": false,
                "type": "nsIGeolocationUpdate"
              }
            ],
            "iid_is": null,
            "name": "watch",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "shutdown",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "enable",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "setHighAccuracy",
            "type": "void"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIGeolocationProvider.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIPlatformInfo",
        "members": [
          {
            "name": "platformVersion",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "platformBuildID",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIPlatformInfo.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsISystemInfo",
        "members": [
          {
            "name": "diskInfo",
            "readonly": true,
            "type": "Promise<any>"
          },
          {
            "name": "countryCode",
            "readonly": true,
            "type": "Promise<any>"
          },
          {
            "name": "osInfo",
            "readonly": true,
            "type": "Promise<any>"
          },
          {
            "name": "processInfo",
            "readonly": true,
            "type": "Promise<any>"
          },
          {
            "args": [
              {
                "name": "aBuildNumber",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "isWindows10BuildOrLater",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsISystemInfo.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIPlatformInfo",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIXULAppInfo",
        "members": [
          {
            "name": "vendor",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "name",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "ID",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "version",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "appBuildID",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "UAName",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "sourceURL",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "updateURL",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "remotingName",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIXULAppInfo.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "PROCESS_TYPE_DEFAULT",
            "value": 0
          },
          {
            "name": "PROCESS_TYPE_CONTENT",
            "value": 2
          },
          {
            "name": "PROCESS_TYPE_IPDLUNITTEST",
            "value": 3
          },
          {
            "name": "PROCESS_TYPE_GMPLUGIN",
            "value": 4
          },
          {
            "name": "PROCESS_TYPE_GPU",
            "value": 5
          },
          {
            "name": "PROCESS_TYPE_VR",
            "value": 6
          },
          {
            "name": "PROCESS_TYPE_RDD",
            "value": 7
          },
          {
            "name": "PROCESS_TYPE_SOCKET",
            "value": 8
          },
          {
            "name": "PROCESS_TYPE_FORKSERVER",
            "value": 10
          },
          {
            "name": "PROCESS_TYPE_UTILITY",
            "value": 11
          },
          {
            "name": "E10S_MULTI_EXPERIMENT",
            "value": 1
          }
        ],
        "enums": [
          {
            "id": "ExperimentStatus",
            "variants": [
              {
                "name": "eExperimentStatusUnenrolled",
                "value": 0
              },
              {
                "name": "eExperimentStatusControl",
                "value": 1
              },
              {
                "name": "eExperimentStatusTreatment",
                "value": 2
              },
              {
                "name": "eExperimentStatusDisqualified",
                "value": 3
              },
              {
                "name": "eExperimentStatusRollout",
                "value": 4
              },
              {
                "name": "eExperimentStatusCount",
                "value": 5
              }
            ]
          },
          {
            "id": "ContentWin32kLockdownState",
            "variants": [
              {
                "name": "LockdownEnabled",
                "value": 1
              },
              {
                "name": "MissingWebRender",
                "value": 2
              },
              {
                "name": "OperatingSystemNotSupported",
                "value": 3
              },
              {
                "name": "PrefNotSet",
                "value": 4
              },
              {
                "name": "MissingNonNativeTheming",
                "value": 6
              },
              {
                "name": "DisabledByEnvVar",
                "value": 7
              },
              {
                "name": "DisabledByE10S",
                "value": 9
              },
              {
                "name": "DisabledByUserPref",
                "value": 10
              },
              {
                "name": "EnabledByUserPref",
                "value": 11
              },
              {
                "name": "DisabledByControlGroup",
                "value": 12
              },
              {
                "name": "EnabledByTreatmentGroup",
                "value": 13
              },
              {
                "name": "DisabledByDefault",
                "value": 14
              },
              {
                "name": "EnabledByDefault",
                "value": 15
              },
              {
                "name": "DecodersArentRemote",
                "value": 16
              },
              {
                "name": "IncompatibleMitigationPolicy",
                "value": 17
              }
            ]
          },
          {
            "id": "FissionDecisionStatus",
            "variants": [
              {
                "name": "eFissionStatusUnknown",
                "value": 0
              },
              {
                "name": "eFissionDisabledByE10sEnv",
                "value": 3
              },
              {
                "name": "eFissionEnabledByEnv",
                "value": 4
              },
              {
                "name": "eFissionDisabledByEnv",
                "value": 5
              },
              {
                "name": "eFissionEnabledByDefault",
                "value": 7
              },
              {
                "name": "eFissionDisabledByDefault",
                "value": 8
              },
              {
                "name": "eFissionEnabledByUserPref",
                "value": 9
              },
              {
                "name": "eFissionDisabledByUserPref",
                "value": 10
              },
              {
                "name": "eFissionDisabledByE10sOther",
                "value": 11
              }
            ]
          }
        ],
        "id": "nsIXULRuntime",
        "members": [
          {
            "name": "inSafeMode",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "win32kExperimentStatus",
            "readonly": true,
            "type": "nsIXULRuntime.ExperimentStatus"
          },
          {
            "name": "win32kLiveStatusTestingOnly",
            "readonly": true,
            "type": "nsIXULRuntime.ContentWin32kLockdownState"
          },
          {
            "name": "win32kSessionStatus",
            "readonly": true,
            "type": "nsIXULRuntime.ContentWin32kLockdownState"
          },
          {
            "name": "fissionAutostart",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "fissionDecisionStatus",
            "readonly": true,
            "type": "nsIXULRuntime.FissionDecisionStatus"
          },
          {
            "name": "fissionDecisionStatusString",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "sessionStorePlatformCollection",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "logConsoleErrors",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "OS",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "XPCOMABI",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "widgetToolkit",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "processType",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "processID",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "uniqueProcessID",
            "readonly": true,
            "type": "u64"
          },
          {
            "name": "remoteType",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "browserTabsRemoteAutostart",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "maxWebProcessCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "accessibilityEnabled",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "accessibilityInstantiator",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "is64Bit",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "isTextRecognitionSupported",
            "readonly": true,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "invalidateCachesOnRestart",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "markProfileEncryptedDatabases",
            "type": "void"
          },
          {
            "name": "replacedLockTime",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "defaultUpdateChannel",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "distributionID",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "windowsDLLBlocklistStatus",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "restartedByOS",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "nativeMenubar",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "chromeColorSchemeIsDark",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "contentThemeDerivedColorSchemeIsDark",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "prefersReducedMotion",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "drawInTitlebar",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "caretBlinkCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "caretBlinkTime",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "desktopEnvironment",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "isWayland",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "processStartupShortcut",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "launcherProcessState",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "lastAppVersion",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "lastAppBuildID",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "xpcom/system/nsIXULRuntime.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]