[
  {
    "consts": [
      {
        "name": "eConsiderQuit",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 1
      },
      {
        "name": "eAttemptQuit",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 2
      },
      {
        "name": "eForceQuit",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 3
      },
      {
        "name": "eRestart",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 16
      },
      {
        "name": "eSilently",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 256
      },
      {
        "name": "SHUTDOWN_PHASE_NOTINSHUTDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 0
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWNCONFIRMED",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 1
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWNNETTEARDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 2
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWNTEARDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 3
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 4
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWNQM",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 5
      },
      {
        "name": "SHUTDOWN_PHASE_APPSHUTDOWNTELEMETRY",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 6
      },
      {
        "name": "SHUTDOWN_PHASE_XPCOMWILLSHUTDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 7
      },
      {
        "name": "SHUTDOWN_PHASE_XPCOMSHUTDOWN",
        "type": {
          "tag": "TD_UINT8"
        },
        "value": 8
      }
    ],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "hidden"
        ],
        "name": "createHiddenWindow",
        "params": []
      },
      {
        "flags": [
          "hidden"
        ],
        "name": "destroyHiddenWindow",
        "params": []
      },
      {
        "flags": [],
        "name": "run",
        "params": []
      },
      {
        "flags": [],
        "name": "enterLastWindowClosingSurvivalArea",
        "params": []
      },
      {
        "flags": [],
        "name": "exitLastWindowClosingSurvivalArea",
        "params": []
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "automaticSafeModeNecessary",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "restartInSafeMode",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "createInstanceWithProfile",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIToolkitProfile",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "element": {
                "tag": "TD_ASTRING"
              },
              "tag": "TD_ARRAY"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "trackStartupCrashBegin",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "trackStartupCrashEnd",
        "params": []
      },
      {
        "flags": [],
        "name": "quit",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "advanceShutdownPhase",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT8"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "setImpendingShutdown",
        "params": []
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isInOrBeyondShutdownPhase",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT8"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "collectShutdownHangAnnotations",
        "params": []
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "shuttingDown",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "attemptingQuit",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "startingUp",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "hidden"
        ],
        "name": "doneStartingUp",
        "params": []
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "restarting",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "wasRestarted",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "wasSilentlyStarted",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "secondsSinceLastOSRestart",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_INT64"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "showedPreXULSkeletonUI",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getStartupInfo",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      }
    ],
    "name": "nsIAppStartup",
    "needs_scriptable": [
      "nsIToolkitProfile"
    ],
    "parent": "nsISupports",
    "uuid": "6621f6d5-6c04-4a0e-9e74-447db221484e"
  }
]