[
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "entries",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "duration",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "interval",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "features",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "activeTabID",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT64"
            }
          }
        ]
      },
      {
        "flags": [
          "hidden"
        ],
        "name": "getFilters",
        "params": []
      }
    ],
    "name": "nsIProfilerStartParams",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "0a175ba7-8fcf-4ce9-9c4b-ccc6272f4425"
  },
  {
    "consts": [],
    "flags": [
      "builtinclass"
    ],
    "methods": [
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "StartProfiler",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "element": {
                "tag": "TD_UTF8STRING"
              },
              "tag": "TD_ARRAY"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "element": {
                "tag": "TD_UTF8STRING"
              },
              "tag": "TD_ARRAY"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_UINT64"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "StopProfiler",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "IsPaused",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "Pause",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "Resume",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "IsSamplingPaused",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "PauseSampling",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "ResumeSampling",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "waitOnePeriodicSampling",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "GetProfile",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getProfileData",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getProfileDataAsync",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getProfileDataAsArrayBuffer",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getProfileDataAsGzippedArrayBuffer",
        "params": [
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "dumpProfileToFileAsync",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          },
          {
            "flags": [
              "in",
              "optional"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "hidden"
        ],
        "name": "dumpProfileToFileAsyncNoJs",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "dumpProfileToFile",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "scheduleDumpToFile",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_PSTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "cancelScheduledDump",
        "params": []
      },
      {
        "flags": [],
        "name": "waitForScheduledDump",
        "params": []
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "IsActive",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "ClearAllPages",
        "params": []
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "GetFeatures",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "element": {
                "tag": "TD_UTF8STRING"
              },
              "tag": "TD_ARRAY"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "jscontext",
          "hasretval"
        ],
        "name": "activeConfiguration",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "GetAllFeatures",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "element": {
                "tag": "TD_UTF8STRING"
              },
              "tag": "TD_ARRAY"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "GetBufferInfo",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getElapsedTime",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "jscontext",
          "hasretval"
        ],
        "name": "sharedLibraries",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_JSVAL"
            }
          }
        ]
      },
      {
        "flags": [
          "jscontext",
          "hasretval"
        ],
        "name": "getSymbolTable",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_CSTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_PROMISE"
            }
          }
        ]
      },
      {
        "flags": [
          "hidden"
        ],
        "name": "getProfileDataAsGzippedArrayBufferAndroid",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_DOUBLE"
            }
          }
        ]
      }
    ],
    "name": "nsIProfiler",
    "needs_scriptable": [],
    "parent": "nsISupports",
    "uuid": "ead3f75c-0e0e-4fbb-901c-1e5392ef5b2a"
  }
]