[
  {
    "consts": [
      {
        "name": "STATE_INITIAL_LAUNCH",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 0
      },
      {
        "name": "STATE_REMOTE_AUTO",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 1
      },
      {
        "name": "STATE_REMOTE_EXPLICIT",
        "type": {
          "tag": "TD_UINT32"
        },
        "value": 2
      }
    ],
    "flags": [],
    "methods": [
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "length",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "getArgument",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "findFlag",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [],
        "name": "removeArguments",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_INT32"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "handleFlag",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "handleFlagWithParam",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "state",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UINT32"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "preventDefault",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "setter"
        ],
        "name": "preventDefault",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_BOOL"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "workingDirectory",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIFile",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "resolveFile",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIFile",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "hasretval"
        ],
        "name": "resolveURI",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "tag": "TD_ASTRING"
            }
          },
          {
            "flags": [
              "out"
            ],
            "type": {
              "name": "nsIURI",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      }
    ],
    "name": "nsICommandLine",
    "needs_scriptable": [
      "nsIFile",
      "nsIURI"
    ],
    "parent": "nsISupports",
    "uuid": "bc3173bd-aa46-46a0-9d25-d9867a9659b6"
  },
  {
    "consts": [],
    "flags": [],
    "methods": [
      {
        "flags": [],
        "name": "handle",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsICommandLine",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      },
      {
        "flags": [
          "getter",
          "hasretval"
        ],
        "name": "helpInfo",
        "params": [
          {
            "flags": [
              "out"
            ],
            "type": {
              "tag": "TD_UTF8STRING"
            }
          }
        ]
      }
    ],
    "name": "nsICommandLineHandler",
    "needs_scriptable": [
      "nsICommandLine"
    ],
    "parent": "nsISupports",
    "uuid": "d4b123df-51ee-48b1-a663-002180e60d3b"
  },
  {
    "consts": [],
    "flags": [],
    "methods": [
      {
        "flags": [],
        "name": "validate",
        "params": [
          {
            "flags": [
              "in"
            ],
            "type": {
              "name": "nsICommandLine",
              "tag": "TD_INTERFACE_TYPE"
            }
          }
        ]
      }
    ],
    "name": "nsICommandLineValidator",
    "needs_scriptable": [
      "nsICommandLine"
    ],
    "parent": "nsISupports",
    "uuid": "5ecaa593-7660-4a3a-957a-92d5770671c7"
  }
]