[
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "loadSubScript",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "loadSubScriptWithOptions",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      }
    ],
    "name": "mozIJSSubScriptLoader",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "19533e7b-f321-4ef1-bc59-6e812dc2a733"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "get",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      }
    ],
    "name": "xpcIJSWeakReference",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "75767928-ecb1-4e6c-9f55-c118b297fcef"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_Interfaces",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "b8c31bba-79db-4a1d-930d-4cdd68713f9e"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_Classes",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "978ff520-d26c-11d2-9842-006008962422"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_Results",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "2fc229a0-5860-11d3-9899-006008962422"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_ID",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "7994a6e0-e028-11d3-8f5d-0010a4e73d9a"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_Exception",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "5bf039c0-e028-11d3-8f5d-0010a4e73d9a"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_Constructor",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "88655640-e028-11d3-8f5d-0010a4e73d9a"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [],
    "name": "nsIXPCComponents_utils_Sandbox",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "4f8ae0dc-d266-4a32-875b-6a9de71a8ce9"
  },
  {
    "consts": [],
    "flags": [
      "function"
    ],
    "methods": [
      {
        "flags": [],
        "name": "callback",
        "params": []
      }
    ],
    "name": "nsIScheduledGCCallback",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "71000535-b0fd-44d1-8ce0-909760e3953c"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [],
        "name": "printStderr",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "reportError",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "Sandbox",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_utils_Sandbox",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "optargc",
          "jscontext",
          "hasretval"
        ],
        "name": "evalInSandbox",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getUAWidgetScope",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIPrincipal",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getSandboxMetadata",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "setSandboxMetadata",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "setSandboxLocaleOverride",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "setSandboxTimezoneOverride",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isESModuleLoaded",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "importGlobalProperties",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getWeakReference",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "xpcIJSWeakReference",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "forceGC",
        "params": []
      },
      {
        "flags": [],
        "name": "forceCC",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "name": "nsICycleCollectorListener",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createCCLogger",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsICycleCollectorListener",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "finishCC",
        "params": []
      },
      {
        "flags": [],
        "name": "ccSlice",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_INT64"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getMaxCCSliceTimeSinceClear",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "clearMaxCCTime",
        "params": []
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "forceShrinkingGC",
        "params": []
      },
      {
        "flags": [],
        "name": "schedulePreciseGC",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIScheduledGCCallback",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "schedulePreciseShrinkingGC",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIScheduledGCCallback",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "unlinkGhostWindows",
        "params": []
      },
      {
        "flags": [],
        "name": "intentionallyLeak",
        "params": []
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getJSTestingFunctions",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getFunctionSourceLocation",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "callFunctionWithAsyncStack",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIStackFrame",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getGlobalForObject",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "isProxy",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "exportFunction",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "createObjectIn",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "makeObjectPropsNormal",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isDeadWrapper",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isRemoteProxy",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "recomputeWrappers",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "setWantXrays",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "dispatch",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "isInAutomation",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "exitIfInAutomation",
        "params": []
      },
      {
        "flags": [],
        "name": "crashIfNotInAutomation",
        "params": []
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "setGCZeal",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "nukeSandbox",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "blockScriptForGlobal",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext"
        ],
        "name": "unblockScriptForGlobal",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isOpaqueWrapper",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isXrayWrapper",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "waiveXrays",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "unwaiveXrays",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getClassName",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getIncumbentGlobal",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getDebugName",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getWatchdogTimestamp",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_INT64"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getJSEngineTelemetryValue",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "cloneInto",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getWebIDLCallerPrincipal",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIPrincipal",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getObjectPrincipal",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIPrincipal",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getRealmLocation",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "readUTF8File",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIFile",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "readUTF8URI",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIURI",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createSpellChecker",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIEditorSpellCheck",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createCommandLine",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "element": {
                "tag": "TD_CSTRING"
              },
              "tag": "TD_ARRAY"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsIFile",
              "tag": "TD_INTERFACE_TYPE"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsISupports",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createCommandParams",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsICommandParams",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createLoadContext",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsILoadContext",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createPrivateLoadContext",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsILoadContext",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createPersistentProperties",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIPersistentProperties",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createDocumentEncoder",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIDocumentEncoder",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "createHTMLCopyEncoder",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIDocumentEncoder",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "loadedESModules",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "element": {
                "tag": "TD_CSTRING"
              },
              "tag": "TD_ARRAY"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getModuleImportStack",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          }
        ]
      }
    ],
    "name": "nsIXPCComponents_Utils",
    "needs_scriptable": [
      "nsICommandParams",
      "nsICycleCollectorListener",
      "nsIDocumentEncoder",
      "nsIEditorSpellCheck",
      "nsIFile",
      "nsILoadContext",
      "nsIPersistentProperties",
      "nsIPrincipal",
      "nsIStackFrame",
      "nsIURI",
      "xpcIJSWeakReference"
    ],
    "parent": "nsISupports",
    "uuid": "86003fe3-ee9a-4620-91dc-eef8b1e58815"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "interfaces",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Interfaces",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "results",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Results",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "isSuccessCode",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "classes",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Classes",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "stack",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIStackFrame",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "manager",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIComponentManager",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "utils",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Utils",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "ID",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_ID",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "Exception",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Exception",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "Constructor",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIXPCComponents_Constructor",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "jscontext",
          "hasretval"
        ],
        "name": "returnCode",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "setter",
          "jscontext"
        ],
        "name": "returnCode",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      }
    ],
    "name": "nsIXPCComponents",
    "needs_scriptable": [
      "nsIComponentManager",
      "nsIStackFrame"
    ],
    "parent": "nsISupports",
    "uuid": "aa28aaf6-70ce-4b03-9514-afe43c7dfda8"
  }
]