[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIBackgroundTasks",
        "members": [
          {
            "name": "isBackgroundTaskMode",
            "readonly": true,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "backgroundTaskName",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "taskName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "overrideBackgroundTaskNameForTesting",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/backgroundtasks/nsIBackgroundTasks.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsICommandLineHandler",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIBackgroundTasksManager",
        "members": [
          {
            "args": [
              {
                "name": "aTaskName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aCommandLine",
                "optional": false,
                "type": "nsICommandLine"
              }
            ],
            "iid_is": null,
            "name": "runBackgroundTaskNamed",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/backgroundtasks/nsIBackgroundTasksManager.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIBackgroundTasksRunner",
        "members": [
          {
            "args": [
              {
                "name": "aTaskName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aCommandLine",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "runInDetachedProcess",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aParentDirPath",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aChildDirName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aSecondsToWait",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aOtherFoldersSuffix",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aMetricsId",
                "optional": true,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "removeDirectoryInDetachedProcess",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/backgroundtasks/nsIBackgroundTasksRunner.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]