[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibilityService",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "getApplicationAccessible",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "Node"
              }
            ],
            "iid_is": null,
            "name": "getAccessibleFor",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "Node"
              }
            ],
            "iid_is": null,
            "name": "getAccessibleDescendantFor",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aRole",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getStringRole",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aStates",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aExtraStates",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getStringStates",
            "type": "nsISupports"
          },
          {
            "args": [
              {
                "name": "aEventType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getStringEventType",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aRelationType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getStringRelationType",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "Node"
              }
            ],
            "iid_is": null,
            "name": "getAccessibleFromCache",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aCacheDomains",
                "optional": false,
                "type": "u64"
              }
            ],
            "iid_is": null,
            "name": "setCacheDomains",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aRoot",
                "optional": false,
                "type": "nsIAccessible"
              }
            ],
            "iid_is": null,
            "name": "createAccessiblePivot",
            "type": "nsIAccessiblePivot"
          },
          {
            "args": [
              {
                "name": "aAccessible",
                "optional": false,
                "type": "nsIAccessible"
              },
              {
                "name": "aOffset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "createTextLeafPoint",
            "type": "nsIAccessibleTextLeafPoint"
          },
          {
            "args": [
              {
                "name": "aModules",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setLogging",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aModule",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "isLogged",
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getConsumers",
            "type": "string"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibilityService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessible",
        "members": [
          {
            "name": "parent",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "nextSibling",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "previousSibling",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "firstChild",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "lastChild",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "children",
            "readonly": true,
            "type": "nsIArray"
          },
          {
            "name": "childCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "indexInParent",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "uniqueID",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "DOMNode",
            "readonly": true,
            "type": "Node"
          },
          {
            "name": "id",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "document",
            "readonly": true,
            "type": "nsIAccessibleDocument"
          },
          {
            "name": "rootDocument",
            "readonly": true,
            "type": "nsIAccessibleDocument"
          },
          {
            "name": "language",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "name",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "value",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "description",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "accessKey",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "keyboardShortcut",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "role",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aState",
                "optional": false,
                "type": "OutParam<u32>"
              },
              {
                "name": "aExtraState",
                "optional": false,
                "type": "OutParam<u32>"
              }
            ],
            "iid_is": null,
            "name": "getState",
            "type": "void"
          },
          {
            "name": "focusedChild",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "attributes",
            "readonly": true,
            "type": "nsIPersistentProperties"
          },
          {
            "name": "cache",
            "readonly": true,
            "type": "nsIPersistentProperties"
          },
          {
            "name": "nativeInterface",
            "readonly": true,
            "type": "nsISupports"
          },
          {
            "args": [
              {
                "name": "aGroupLevel",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "aSimilarItemsInGroup",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "aPositionInGroup",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "groupPosition",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getChildAtPoint",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getDeepestChildAtPoint",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getDeepestChildAtPointInProcess",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aChildIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getChildAt",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aRelationType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getRelationByType",
            "type": "nsIAccessibleRelation"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getRelations",
            "type": "nsIArray"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "y",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "width",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "height",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getBounds",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aX",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "aY",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "aWidth",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "aHeight",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getBoundsInCSSPixels",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "isSelected",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "setSelected",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "takeSelection",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "takeFocus",
            "type": "void"
          },
          {
            "name": "actionCount",
            "readonly": true,
            "type": "u8"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u8"
              }
            ],
            "iid_is": null,
            "name": "getActionName",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u8"
              }
            ],
            "iid_is": null,
            "name": "getActionDescription",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u8"
              }
            ],
            "iid_is": null,
            "name": "doAction",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aScrollType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "scrollTo",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "coordinateType",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "scrollToPoint",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "announcement",
                "optional": false,
                "type": "string"
              },
              {
                "name": "priority",
                "optional": false,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "announce",
            "type": "void"
          },
          {
            "name": "computedARIARole",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessible.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [
          {
            "name": "POLITE",
            "value": 0
          },
          {
            "name": "ASSERTIVE",
            "value": 1
          }
        ],
        "enums": [],
        "id": "nsIAccessibleAnnouncementEvent",
        "members": [
          {
            "name": "announcement",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "priority",
            "readonly": true,
            "type": "u16"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleAnnouncementEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleApplication",
        "members": [
          {
            "name": "appName",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "appVersion",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "platformName",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "platformVersion",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleApplication.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleCaretMoveEvent",
        "members": [
          {
            "name": "caretOffset",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "isSelectionCollapsed",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "isAtEndOfLine",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "granularity",
            "readonly": true,
            "type": "i32"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleCaretMoveEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleDocument",
        "members": [
          {
            "name": "URL",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "title",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "mimeType",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "docType",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "DOMDocument",
            "readonly": true,
            "type": "Document"
          },
          {
            "name": "window",
            "readonly": true,
            "type": "mozIDOMWindowProxy"
          },
          {
            "name": "parentDocument",
            "readonly": true,
            "type": "nsIAccessibleDocument"
          },
          {
            "name": "childDocumentCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getChildDocumentAt",
            "type": "nsIAccessibleDocument"
          },
          {
            "name": "browsingContext",
            "readonly": true,
            "type": "BrowsingContext"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleDocument.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleEditableText",
        "members": [
          {
            "args": [
              {
                "name": "text",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setTextContents",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "text",
                "optional": false,
                "type": "string"
              },
              {
                "name": "position",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "insertText",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startPos",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endPos",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "copyText",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startPos",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endPos",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "cutText",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startPos",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endPos",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "deleteText",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "position",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "pasteText",
            "type": "void"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleEditableText.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "EVENT_SHOW",
            "value": 1
          },
          {
            "name": "EVENT_HIDE",
            "value": 2
          },
          {
            "name": "EVENT_REORDER",
            "value": 3
          },
          {
            "name": "EVENT_FOCUS",
            "value": 4
          },
          {
            "name": "EVENT_STATE_CHANGE",
            "value": 5
          },
          {
            "name": "EVENT_NAME_CHANGE",
            "value": 6
          },
          {
            "name": "EVENT_DESCRIPTION_CHANGE",
            "value": 7
          },
          {
            "name": "EVENT_VALUE_CHANGE",
            "value": 8
          },
          {
            "name": "EVENT_SELECTION",
            "value": 9
          },
          {
            "name": "EVENT_SELECTION_ADD",
            "value": 10
          },
          {
            "name": "EVENT_SELECTION_REMOVE",
            "value": 11
          },
          {
            "name": "EVENT_SELECTION_WITHIN",
            "value": 12
          },
          {
            "name": "EVENT_ALERT",
            "value": 13
          },
          {
            "name": "EVENT_MENU_START",
            "value": 14
          },
          {
            "name": "EVENT_MENU_END",
            "value": 15
          },
          {
            "name": "EVENT_MENUPOPUP_START",
            "value": 16
          },
          {
            "name": "EVENT_MENUPOPUP_END",
            "value": 17
          },
          {
            "name": "EVENT_DRAGDROP_START",
            "value": 18
          },
          {
            "name": "EVENT_SCROLLING_START",
            "value": 19
          },
          {
            "name": "EVENT_SCROLLING_END",
            "value": 20
          },
          {
            "name": "EVENT_DOCUMENT_LOAD_COMPLETE",
            "value": 21
          },
          {
            "name": "EVENT_DOCUMENT_RELOAD",
            "value": 22
          },
          {
            "name": "EVENT_DOCUMENT_LOAD_STOPPED",
            "value": 23
          },
          {
            "name": "EVENT_TEXT_ATTRIBUTE_CHANGED",
            "value": 24
          },
          {
            "name": "EVENT_TEXT_CARET_MOVED",
            "value": 25
          },
          {
            "name": "EVENT_TEXT_INSERTED",
            "value": 26
          },
          {
            "name": "EVENT_TEXT_REMOVED",
            "value": 27
          },
          {
            "name": "EVENT_TEXT_SELECTION_CHANGED",
            "value": 28
          },
          {
            "name": "EVENT_WINDOW_ACTIVATE",
            "value": 29
          },
          {
            "name": "EVENT_WINDOW_DEACTIVATE",
            "value": 30
          },
          {
            "name": "EVENT_WINDOW_MAXIMIZE",
            "value": 31
          },
          {
            "name": "EVENT_WINDOW_MINIMIZE",
            "value": 32
          },
          {
            "name": "EVENT_WINDOW_RESTORE",
            "value": 33
          },
          {
            "name": "EVENT_OBJECT_ATTRIBUTE_CHANGED",
            "value": 34
          },
          {
            "name": "EVENT_TEXT_VALUE_CHANGE",
            "value": 35
          },
          {
            "name": "EVENT_SCROLLING",
            "value": 36
          },
          {
            "name": "EVENT_ANNOUNCEMENT",
            "value": 37
          },
          {
            "name": "EVENT_LIVE_REGION_ADDED",
            "value": 38
          },
          {
            "name": "EVENT_LIVE_REGION_REMOVED",
            "value": 39
          },
          {
            "name": "EVENT_INNER_REORDER",
            "value": 40
          },
          {
            "name": "EVENT_LIVE_REGION_CHANGED",
            "value": 41
          },
          {
            "name": "EVENT_ERRORMESSAGE_CHANGED",
            "value": 42
          },
          {
            "name": "EVENT_LAST_ENTRY",
            "value": 43
          }
        ],
        "enums": [],
        "id": "nsIAccessibleEvent",
        "members": [
          {
            "name": "eventType",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "accessible",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "accessibleDocument",
            "readonly": true,
            "type": "nsIAccessibleDocument"
          },
          {
            "name": "DOMNode",
            "readonly": true,
            "type": "Node"
          },
          {
            "name": "isFromUserInput",
            "readonly": true,
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleHideEvent",
        "members": [
          {
            "name": "targetParent",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "targetNextSibling",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "targetPrevSibling",
            "readonly": true,
            "type": "nsIAccessible"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleHideEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleHyperLink",
        "members": [
          {
            "name": "startIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "endIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "valid",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "anchorCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getURI",
            "type": "nsIURI"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getAnchor",
            "type": "nsIAccessible"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleHyperLink.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleHyperText",
        "members": [
          {
            "name": "linkCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getLinkAt",
            "type": "nsIAccessibleHyperLink"
          },
          {
            "args": [
              {
                "name": "link",
                "optional": false,
                "type": "nsIAccessibleHyperLink"
              }
            ],
            "iid_is": null,
            "name": "getLinkIndex",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getLinkIndexAtOffset",
            "type": "i32"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleHyperText.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleImage",
        "members": [
          {
            "args": [
              {
                "name": "coordType",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "x",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "y",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getImagePosition",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "width",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "height",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getImageSize",
            "type": "void"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleImage.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleObjectAttributeChangedEvent",
        "members": [
          {
            "name": "changedAttribute",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleObjectAttributeChangedEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessiblePivot",
        "members": [
          {
            "args": [
              {
                "name": "aAnchor",
                "optional": false,
                "type": "nsIAccessible"
              },
              {
                "name": "aRule",
                "optional": false,
                "type": "nsIAccessibleTraversalRule"
              },
              {
                "name": "aIncludeStart",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "next",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aAnchor",
                "optional": false,
                "type": "nsIAccessible"
              },
              {
                "name": "aRule",
                "optional": false,
                "type": "nsIAccessibleTraversalRule"
              },
              {
                "name": "aIncludeStart",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "prev",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aRule",
                "optional": false,
                "type": "nsIAccessibleTraversalRule"
              }
            ],
            "iid_is": null,
            "name": "first",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aRule",
                "optional": false,
                "type": "nsIAccessibleTraversalRule"
              }
            ],
            "iid_is": null,
            "name": "last",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aX",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aY",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aRule",
                "optional": false,
                "type": "nsIAccessibleTraversalRule"
              }
            ],
            "iid_is": null,
            "name": "atPoint",
            "type": "nsIAccessible"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "FILTER_IGNORE",
            "value": 0
          },
          {
            "name": "FILTER_MATCH",
            "value": 1
          },
          {
            "name": "FILTER_IGNORE_SUBTREE",
            "value": 2
          }
        ],
        "enums": [],
        "id": "nsIAccessibleTraversalRule",
        "members": [
          {
            "args": [
              {
                "name": "aAccessible",
                "optional": false,
                "type": "nsIAccessible"
              }
            ],
            "iid_is": null,
            "name": "match",
            "type": "u16"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessiblePivot.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ],
      [
        "PivotMoveReason",
        "i16"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "RELATION_LABELLED_BY",
            "value": 0
          },
          {
            "name": "RELATION_LABEL_FOR",
            "value": 1
          },
          {
            "name": "RELATION_DESCRIBED_BY",
            "value": 2
          },
          {
            "name": "RELATION_DESCRIPTION_FOR",
            "value": 3
          },
          {
            "name": "RELATION_NODE_CHILD_OF",
            "value": 4
          },
          {
            "name": "RELATION_NODE_PARENT_OF",
            "value": 5
          },
          {
            "name": "RELATION_CONTROLLED_BY",
            "value": 6
          },
          {
            "name": "RELATION_CONTROLLER_FOR",
            "value": 7
          },
          {
            "name": "RELATION_FLOWS_TO",
            "value": 8
          },
          {
            "name": "RELATION_FLOWS_FROM",
            "value": 9
          },
          {
            "name": "RELATION_MEMBER_OF",
            "value": 10
          },
          {
            "name": "RELATION_SUBWINDOW_OF",
            "value": 11
          },
          {
            "name": "RELATION_EMBEDS",
            "value": 12
          },
          {
            "name": "RELATION_EMBEDDED_BY",
            "value": 13
          },
          {
            "name": "RELATION_POPUP_FOR",
            "value": 14
          },
          {
            "name": "RELATION_PARENT_WINDOW_OF",
            "value": 15
          },
          {
            "name": "RELATION_DEFAULT_BUTTON",
            "value": 16
          },
          {
            "name": "RELATION_CONTAINING_DOCUMENT",
            "value": 17
          },
          {
            "name": "RELATION_CONTAINING_TAB_PANE",
            "value": 18
          },
          {
            "name": "RELATION_CONTAINING_WINDOW",
            "value": 19
          },
          {
            "name": "RELATION_CONTAINING_APPLICATION",
            "value": 20
          },
          {
            "name": "RELATION_DETAILS",
            "value": 21
          },
          {
            "name": "RELATION_DETAILS_FOR",
            "value": 22
          },
          {
            "name": "RELATION_ERRORMSG",
            "value": 23
          },
          {
            "name": "RELATION_ERRORMSG_FOR",
            "value": 24
          },
          {
            "name": "RELATION_LINKS_TO",
            "value": 25
          },
          {
            "name": "RELATION_ACTION",
            "value": 32
          },
          {
            "name": "RELATION_ACTION_FOR",
            "value": 33
          }
        ],
        "enums": [],
        "id": "nsIAccessibleRelation",
        "members": [
          {
            "name": "relationType",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "targetsCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getTarget",
            "type": "nsIAccessible"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getTargets",
            "type": "nsIArray"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleRelation.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "ROLE_NOTHING",
            "value": 0
          },
          {
            "name": "ROLE_MENUBAR",
            "value": 1
          },
          {
            "name": "ROLE_SCROLLBAR",
            "value": 2
          },
          {
            "name": "ROLE_ALERT",
            "value": 3
          },
          {
            "name": "ROLE_INTERNAL_FRAME",
            "value": 4
          },
          {
            "name": "ROLE_MENUPOPUP",
            "value": 5
          },
          {
            "name": "ROLE_MENUITEM",
            "value": 6
          },
          {
            "name": "ROLE_TOOLTIP",
            "value": 7
          },
          {
            "name": "ROLE_APPLICATION",
            "value": 8
          },
          {
            "name": "ROLE_DOCUMENT",
            "value": 9
          },
          {
            "name": "ROLE_PANE",
            "value": 10
          },
          {
            "name": "ROLE_DIALOG",
            "value": 11
          },
          {
            "name": "ROLE_GROUPING",
            "value": 12
          },
          {
            "name": "ROLE_SEPARATOR",
            "value": 13
          },
          {
            "name": "ROLE_TOOLBAR",
            "value": 14
          },
          {
            "name": "ROLE_STATUSBAR",
            "value": 15
          },
          {
            "name": "ROLE_TABLE",
            "value": 16
          },
          {
            "name": "ROLE_COLUMNHEADER",
            "value": 17
          },
          {
            "name": "ROLE_ROWHEADER",
            "value": 18
          },
          {
            "name": "ROLE_ROW",
            "value": 19
          },
          {
            "name": "ROLE_CELL",
            "value": 20
          },
          {
            "name": "ROLE_LINK",
            "value": 21
          },
          {
            "name": "ROLE_LIST",
            "value": 22
          },
          {
            "name": "ROLE_LISTITEM",
            "value": 23
          },
          {
            "name": "ROLE_OUTLINE",
            "value": 24
          },
          {
            "name": "ROLE_OUTLINEITEM",
            "value": 25
          },
          {
            "name": "ROLE_PAGETAB",
            "value": 26
          },
          {
            "name": "ROLE_PROPERTYPAGE",
            "value": 27
          },
          {
            "name": "ROLE_GRAPHIC",
            "value": 28
          },
          {
            "name": "ROLE_STATICTEXT",
            "value": 29
          },
          {
            "name": "ROLE_TEXT_LEAF",
            "value": 30
          },
          {
            "name": "ROLE_PUSHBUTTON",
            "value": 31
          },
          {
            "name": "ROLE_CHECKBUTTON",
            "value": 32
          },
          {
            "name": "ROLE_RADIOBUTTON",
            "value": 33
          },
          {
            "name": "ROLE_COMBOBOX",
            "value": 34
          },
          {
            "name": "ROLE_PROGRESSBAR",
            "value": 35
          },
          {
            "name": "ROLE_SLIDER",
            "value": 36
          },
          {
            "name": "ROLE_SPINBUTTON",
            "value": 37
          },
          {
            "name": "ROLE_DIAGRAM",
            "value": 38
          },
          {
            "name": "ROLE_ANIMATION",
            "value": 39
          },
          {
            "name": "ROLE_BUTTONDROPDOWN",
            "value": 40
          },
          {
            "name": "ROLE_BUTTONMENU",
            "value": 41
          },
          {
            "name": "ROLE_WHITESPACE",
            "value": 42
          },
          {
            "name": "ROLE_PAGETABLIST",
            "value": 43
          },
          {
            "name": "ROLE_CANVAS",
            "value": 44
          },
          {
            "name": "ROLE_CHECK_MENU_ITEM",
            "value": 45
          },
          {
            "name": "ROLE_DATE_EDITOR",
            "value": 46
          },
          {
            "name": "ROLE_CHROME_WINDOW",
            "value": 47
          },
          {
            "name": "ROLE_LABEL",
            "value": 48
          },
          {
            "name": "ROLE_PASSWORD_TEXT",
            "value": 49
          },
          {
            "name": "ROLE_RADIO_MENU_ITEM",
            "value": 50
          },
          {
            "name": "ROLE_TEXT_CONTAINER",
            "value": 51
          },
          {
            "name": "ROLE_TOGGLE_BUTTON",
            "value": 52
          },
          {
            "name": "ROLE_TREE_TABLE",
            "value": 53
          },
          {
            "name": "ROLE_PARAGRAPH",
            "value": 54
          },
          {
            "name": "ROLE_ENTRY",
            "value": 55
          },
          {
            "name": "ROLE_CAPTION",
            "value": 56
          },
          {
            "name": "ROLE_NON_NATIVE_DOCUMENT",
            "value": 57
          },
          {
            "name": "ROLE_HEADING",
            "value": 58
          },
          {
            "name": "ROLE_SECTION",
            "value": 59
          },
          {
            "name": "ROLE_FORM",
            "value": 60
          },
          {
            "name": "ROLE_APP_ROOT",
            "value": 61
          },
          {
            "name": "ROLE_PARENT_MENUITEM",
            "value": 62
          },
          {
            "name": "ROLE_COMBOBOX_LIST",
            "value": 63
          },
          {
            "name": "ROLE_COMBOBOX_OPTION",
            "value": 64
          },
          {
            "name": "ROLE_IMAGE_MAP",
            "value": 65
          },
          {
            "name": "ROLE_OPTION",
            "value": 66
          },
          {
            "name": "ROLE_RICH_OPTION",
            "value": 67
          },
          {
            "name": "ROLE_LISTBOX",
            "value": 68
          },
          {
            "name": "ROLE_FLAT_EQUATION",
            "value": 69
          },
          {
            "name": "ROLE_GRID_CELL",
            "value": 70
          },
          {
            "name": "ROLE_NOTE",
            "value": 71
          },
          {
            "name": "ROLE_FIGURE",
            "value": 72
          },
          {
            "name": "ROLE_CHECK_RICH_OPTION",
            "value": 73
          },
          {
            "name": "ROLE_DEFINITION_LIST",
            "value": 74
          },
          {
            "name": "ROLE_TERM",
            "value": 75
          },
          {
            "name": "ROLE_DEFINITION",
            "value": 76
          },
          {
            "name": "ROLE_KEY",
            "value": 77
          },
          {
            "name": "ROLE_SWITCH",
            "value": 78
          },
          {
            "name": "ROLE_MATHML_MATH",
            "value": 79
          },
          {
            "name": "ROLE_MATHML_IDENTIFIER",
            "value": 80
          },
          {
            "name": "ROLE_MATHML_NUMBER",
            "value": 81
          },
          {
            "name": "ROLE_MATHML_OPERATOR",
            "value": 82
          },
          {
            "name": "ROLE_MATHML_TEXT",
            "value": 83
          },
          {
            "name": "ROLE_MATHML_EMPTY_GROUP",
            "value": 84
          },
          {
            "name": "ROLE_MATHML_GLYPH",
            "value": 85
          },
          {
            "name": "ROLE_MATHML_ROW",
            "value": 86
          },
          {
            "name": "ROLE_MATHML_FRACTION",
            "value": 87
          },
          {
            "name": "ROLE_MATHML_SQUARE_ROOT",
            "value": 88
          },
          {
            "name": "ROLE_MATHML_ROOT",
            "value": 89
          },
          {
            "name": "ROLE_MATHML_ENCLOSED",
            "value": 90
          },
          {
            "name": "ROLE_MATHML_STYLE",
            "value": 91
          },
          {
            "name": "ROLE_MATHML_SUB",
            "value": 92
          },
          {
            "name": "ROLE_MATHML_SUP",
            "value": 93
          },
          {
            "name": "ROLE_MATHML_SUB_SUP",
            "value": 94
          },
          {
            "name": "ROLE_MATHML_UNDER",
            "value": 95
          },
          {
            "name": "ROLE_MATHML_OVER",
            "value": 96
          },
          {
            "name": "ROLE_MATHML_UNDER_OVER",
            "value": 97
          },
          {
            "name": "ROLE_MATHML_MULTISCRIPTS",
            "value": 98
          },
          {
            "name": "ROLE_MATHML_TABLE",
            "value": 99
          },
          {
            "name": "ROLE_MATHML_LABELED_ROW",
            "value": 100
          },
          {
            "name": "ROLE_MATHML_TABLE_ROW",
            "value": 101
          },
          {
            "name": "ROLE_MATHML_CELL",
            "value": 102
          },
          {
            "name": "ROLE_MATHML_LINK",
            "value": 103
          },
          {
            "name": "ROLE_MATHML_ERROR",
            "value": 104
          },
          {
            "name": "ROLE_MATHML_STACK",
            "value": 105
          },
          {
            "name": "ROLE_MATHML_LONG_DIVISION",
            "value": 106
          },
          {
            "name": "ROLE_MATHML_STACK_GROUP",
            "value": 107
          },
          {
            "name": "ROLE_MATHML_STACK_ROW",
            "value": 108
          },
          {
            "name": "ROLE_MATHML_STACK_CARRIES",
            "value": 109
          },
          {
            "name": "ROLE_MATHML_STACK_CARRY",
            "value": 110
          },
          {
            "name": "ROLE_MATHML_STACK_LINE",
            "value": 111
          },
          {
            "name": "ROLE_RADIO_GROUP",
            "value": 112
          },
          {
            "name": "ROLE_TEXT",
            "value": 113
          },
          {
            "name": "ROLE_DETAILS",
            "value": 114
          },
          {
            "name": "ROLE_SUMMARY",
            "value": 115
          },
          {
            "name": "ROLE_LANDMARK",
            "value": 116
          },
          {
            "name": "ROLE_NAVIGATION",
            "value": 117
          },
          {
            "name": "ROLE_FOOTNOTE",
            "value": 118
          },
          {
            "name": "ROLE_ARTICLE",
            "value": 119
          },
          {
            "name": "ROLE_REGION",
            "value": 120
          },
          {
            "name": "ROLE_EDITCOMBOBOX",
            "value": 121
          },
          {
            "name": "ROLE_BLOCKQUOTE",
            "value": 122
          },
          {
            "name": "ROLE_CONTENT_DELETION",
            "value": 123
          },
          {
            "name": "ROLE_CONTENT_INSERTION",
            "value": 124
          },
          {
            "name": "ROLE_FORM_LANDMARK",
            "value": 125
          },
          {
            "name": "ROLE_MARK",
            "value": 126
          },
          {
            "name": "ROLE_SUGGESTION",
            "value": 127
          },
          {
            "name": "ROLE_COMMENT",
            "value": 128
          },
          {
            "name": "ROLE_CODE",
            "value": 129
          },
          {
            "name": "ROLE_TIME_EDITOR",
            "value": 130
          },
          {
            "name": "ROLE_LISTITEM_MARKER",
            "value": 131
          },
          {
            "name": "ROLE_METER",
            "value": 132
          },
          {
            "name": "ROLE_SUBSCRIPT",
            "value": 133
          },
          {
            "name": "ROLE_SUPERSCRIPT",
            "value": 134
          },
          {
            "name": "ROLE_EMPHASIS",
            "value": 135
          },
          {
            "name": "ROLE_STRONG",
            "value": 136
          },
          {
            "name": "ROLE_TIME",
            "value": 137
          },
          {
            "name": "ROLE_GRID",
            "value": 138
          },
          {
            "name": "ROLE_ROWGROUP",
            "value": 139
          },
          {
            "name": "ROLE_SEARCHBOX",
            "value": 140
          }
        ],
        "enums": [],
        "id": "nsIAccessibleRole",
        "members": []
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleRole.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleScrollingEvent",
        "members": [
          {
            "name": "scrollX",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "scrollY",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "maxScrollX",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "maxScrollY",
            "readonly": true,
            "type": "u32"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleScrollingEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleSelectable",
        "members": [
          {
            "name": "selectedItems",
            "readonly": true,
            "type": "nsIArray"
          },
          {
            "name": "selectedItemCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getSelectedItemAt",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "isItemSelected",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "addItemToSelection",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "index",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "removeItemFromSelection",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "selectAll",
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "unselectAll",
            "type": "void"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleSelectable.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleStateChangeEvent",
        "members": [
          {
            "name": "state",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "isExtraState",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "isEnabled",
            "readonly": true,
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleStateChangeEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "STATE_UNAVAILABLE",
            "value": 1
          },
          {
            "name": "STATE_SELECTED",
            "value": 2
          },
          {
            "name": "STATE_FOCUSED",
            "value": 4
          },
          {
            "name": "STATE_PRESSED",
            "value": 8
          },
          {
            "name": "STATE_CHECKED",
            "value": 16
          },
          {
            "name": "STATE_MIXED",
            "value": 32
          },
          {
            "name": "STATE_READONLY",
            "value": 64
          },
          {
            "name": "STATE_HOTTRACKED",
            "value": 128
          },
          {
            "name": "STATE_DEFAULT",
            "value": 256
          },
          {
            "name": "STATE_EXPANDED",
            "value": 512
          },
          {
            "name": "STATE_COLLAPSED",
            "value": 1024
          },
          {
            "name": "STATE_BUSY",
            "value": 2048
          },
          {
            "name": "STATE_FLOATING",
            "value": 4096
          },
          {
            "name": "STATE_MARQUEED",
            "value": 8192
          },
          {
            "name": "STATE_ANIMATED",
            "value": 16384
          },
          {
            "name": "STATE_INVISIBLE",
            "value": 32768
          },
          {
            "name": "STATE_OFFSCREEN",
            "value": 65536
          },
          {
            "name": "STATE_SIZEABLE",
            "value": 131072
          },
          {
            "name": "STATE_MOVEABLE",
            "value": 262144
          },
          {
            "name": "STATE_SELFVOICING",
            "value": 524288
          },
          {
            "name": "STATE_FOCUSABLE",
            "value": 1048576
          },
          {
            "name": "STATE_SELECTABLE",
            "value": 2097152
          },
          {
            "name": "STATE_LINKED",
            "value": 4194304
          },
          {
            "name": "STATE_TRAVERSED",
            "value": 8388608
          },
          {
            "name": "STATE_MULTISELECTABLE",
            "value": 16777216
          },
          {
            "name": "STATE_EXTSELECTABLE",
            "value": 33554432
          },
          {
            "name": "STATE_ALERT_LOW",
            "value": 67108864
          },
          {
            "name": "STATE_ALERT_MEDIUM",
            "value": 134217728
          },
          {
            "name": "STATE_ALERT_HIGH",
            "value": 268435456
          },
          {
            "name": "STATE_PROTECTED",
            "value": 536870912
          },
          {
            "name": "STATE_HASPOPUP",
            "value": 1073741824
          },
          {
            "name": "STATE_REQUIRED",
            "value": 67108864
          },
          {
            "name": "STATE_IMPORTANT",
            "value": 134217728
          },
          {
            "name": "STATE_INVALID",
            "value": 268435456
          },
          {
            "name": "STATE_CHECKABLE",
            "value": 8192
          },
          {
            "name": "EXT_STATE_SUPPORTS_AUTOCOMPLETION",
            "value": 1
          },
          {
            "name": "EXT_STATE_DEFUNCT",
            "value": 2
          },
          {
            "name": "EXT_STATE_SELECTABLE_TEXT",
            "value": 4
          },
          {
            "name": "EXT_STATE_EDITABLE",
            "value": 8
          },
          {
            "name": "EXT_STATE_ACTIVE",
            "value": 16
          },
          {
            "name": "EXT_STATE_MODAL",
            "value": 32
          },
          {
            "name": "EXT_STATE_MULTI_LINE",
            "value": 64
          },
          {
            "name": "EXT_STATE_HORIZONTAL",
            "value": 128
          },
          {
            "name": "EXT_STATE_OPAQUE",
            "value": 256
          },
          {
            "name": "EXT_STATE_SINGLE_LINE",
            "value": 512
          },
          {
            "name": "EXT_STATE_TRANSIENT",
            "value": 1024
          },
          {
            "name": "EXT_STATE_VERTICAL",
            "value": 2048
          },
          {
            "name": "EXT_STATE_STALE",
            "value": 4096
          },
          {
            "name": "EXT_STATE_ENABLED",
            "value": 8192
          },
          {
            "name": "EXT_STATE_SENSITIVE",
            "value": 16384
          },
          {
            "name": "EXT_STATE_EXPANDABLE",
            "value": 32768
          },
          {
            "name": "EXT_STATE_PINNED",
            "value": 65536
          },
          {
            "name": "EXT_STATE_CURRENT",
            "value": 131072
          }
        ],
        "enums": [],
        "id": "nsIAccessibleStates",
        "members": []
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleStates.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleTable",
        "members": [
          {
            "name": "caption",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "name": "summary",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "columnCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "rowCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "rowIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "columnIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getCellAt",
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "rowIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "columnIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getCellIndexAt",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "cellIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getColumnIndexAt",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "cellIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getRowIndexAt",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "cellIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "rowIndex",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "columnIndex",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getRowAndColumnIndicesAt",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "row",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "column",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getColumnExtentAt",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "row",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "column",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getRowExtentAt",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "columnIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getColumnDescription",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "rowIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getRowDescription",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "columnIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "isColumnSelected",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "rowIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "isRowSelected",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "rowIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "columnIndex",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "isCellSelected",
            "type": "boolean"
          },
          {
            "name": "selectedCellCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "selectedColumnCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "selectedRowCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "selectedCells",
            "readonly": true,
            "type": "nsIArray"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getSelectedCellIndices",
            "type": "u32[]"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getSelectedColumnIndices",
            "type": "u32[]"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getSelectedRowIndices",
            "type": "u32[]"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "isProbablyForLayout",
            "type": "boolean"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleTableCell",
        "members": [
          {
            "name": "table",
            "readonly": true,
            "type": "nsIAccessibleTable"
          },
          {
            "name": "columnIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "rowIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "columnExtent",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "rowExtent",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "columnHeaderCells",
            "readonly": true,
            "type": "nsIArray"
          },
          {
            "name": "rowHeaderCells",
            "readonly": true,
            "type": "nsIArray"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "isSelected",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTable.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleTableChangeEvent",
        "members": [
          {
            "name": "rowOrColIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "RowsOrColsCount",
            "readonly": true,
            "type": "i32"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTableChangeEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "TEXT_OFFSET_END_OF_TEXT",
            "value": -1
          },
          {
            "name": "TEXT_OFFSET_CARET",
            "value": -2
          },
          {
            "name": "BOUNDARY_CHAR",
            "value": 0
          },
          {
            "name": "BOUNDARY_WORD_START",
            "value": 1
          },
          {
            "name": "BOUNDARY_WORD_END",
            "value": 2
          },
          {
            "name": "BOUNDARY_SENTENCE_START",
            "value": 3
          },
          {
            "name": "BOUNDARY_SENTENCE_END",
            "value": 4
          },
          {
            "name": "BOUNDARY_LINE_START",
            "value": 5
          },
          {
            "name": "BOUNDARY_LINE_END",
            "value": 6
          },
          {
            "name": "BOUNDARY_PARAGRAPH",
            "value": 7
          },
          {
            "name": "BOUNDARY_CLUSTER",
            "value": 8
          }
        ],
        "enums": [],
        "id": "nsIAccessibleText",
        "members": [
          {
            "name": "caretOffset",
            "readonly": false,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "y",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "width",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "height",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getCaretRect",
            "type": "void"
          },
          {
            "name": "characterCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "selectionCount",
            "readonly": true,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "startOffset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getText",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "boundaryType",
                "optional": false,
                "type": "AccessibleTextBoundary"
              },
              {
                "name": "startOffset",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getTextAfterOffset",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "boundaryType",
                "optional": false,
                "type": "AccessibleTextBoundary"
              },
              {
                "name": "startOffset",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getTextAtOffset",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "boundaryType",
                "optional": false,
                "type": "AccessibleTextBoundary"
              },
              {
                "name": "startOffset",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getTextBeforeOffset",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "getCharacterAtOffset",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "includeDefAttrs",
                "optional": false,
                "type": "boolean"
              },
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "rangeStartOffset",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "rangeEndOffset",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getTextAttributes",
            "type": "nsIPersistentProperties"
          },
          {
            "name": "defaultTextAttributes",
            "readonly": true,
            "type": "nsIPersistentProperties"
          },
          {
            "args": [
              {
                "name": "offset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "x",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "y",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "width",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "height",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "coordType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getCharacterExtents",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startOffset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "x",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "y",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "width",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "height",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "coordType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getRangeExtents",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "coordType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getOffsetAtPoint",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "selectionNum",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "startOffset",
                "optional": false,
                "type": "OutParam<i32>"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "OutParam<i32>"
              }
            ],
            "iid_is": null,
            "name": "getSelectionBounds",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "selectionNum",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "startOffset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "setSelectionBounds",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startOffset",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endOffset",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "addSelection",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "selectionNum",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "removeSelection",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "scrollType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "scrollSubstringTo",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "startIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "endIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "coordinateType",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "x",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "y",
                "optional": false,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "scrollSubstringToPoint",
            "type": "void"
          },
          {
            "name": "selectionRanges",
            "readonly": true,
            "type": "nsIArray"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleText.idl",
    "typedefs": [
      [
        "AccessibleTextBoundary",
        "i32"
      ],
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleTextChangeEvent",
        "members": [
          {
            "name": "start",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "length",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "isInserted",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "modifiedText",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTextChangeEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "DIRECTION_NEXT",
            "value": 0
          },
          {
            "name": "DIRECTION_PREVIOUS",
            "value": 1
          },
          {
            "name": "BOUNDARY_FLAG_DEFAULT",
            "value": 0
          },
          {
            "name": "BOUNDARY_FLAG_INCLUDE_ORIGIN",
            "value": 1
          },
          {
            "name": "BOUNDARY_FLAG_STOP_IN_EDITABLE",
            "value": 2
          },
          {
            "name": "BOUNDARY_FLAG_SKIP_LIST_ITEM_MARKER",
            "value": 4
          }
        ],
        "enums": [],
        "id": "nsIAccessibleTextLeafPoint",
        "members": [
          {
            "name": "accessible",
            "readonly": false,
            "type": "nsIAccessible"
          },
          {
            "name": "offset",
            "readonly": false,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aBoundaryType",
                "optional": false,
                "type": "AccessibleTextBoundary"
              },
              {
                "name": "aDirection",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aFlags",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "findBoundary",
            "type": "nsIAccessibleTextLeafPoint"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTextLeafRange.idl",
    "typedefs": [
      [
        "AccessibleTextBoundary",
        "i32"
      ],
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "EndPoint_Start",
            "value": 1
          },
          {
            "name": "EndPoint_End",
            "value": 2
          },
          {
            "name": "AlignToTop",
            "value": 0
          },
          {
            "name": "AlignToBottom",
            "value": 1
          }
        ],
        "enums": [],
        "id": "nsIAccessibleTextRange",
        "members": [
          {
            "name": "startContainer",
            "readonly": true,
            "type": "nsIAccessibleText"
          },
          {
            "name": "startOffset",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "endContainer",
            "readonly": true,
            "type": "nsIAccessibleText"
          },
          {
            "name": "endOffset",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "container",
            "readonly": true,
            "type": "nsIAccessible"
          },
          {
            "args": [
              {
                "name": "aOtherRange",
                "optional": false,
                "type": "nsIAccessibleTextRange"
              }
            ],
            "iid_is": null,
            "name": "compare",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aEndPoint",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aOtherRange",
                "optional": false,
                "type": "nsIAccessibleTextRange"
              },
              {
                "name": "aOtherRangeEndPoint",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "compareEndPoints",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aContainer",
                "optional": false,
                "type": "nsIAccessible"
              }
            ],
            "iid_is": null,
            "name": "crop",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTextRange.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsIAccessibleEvent",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleTextSelectionChangeEvent",
        "members": [
          {
            "name": "selectionRanges",
            "readonly": true,
            "type": "nsIArray"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTextSelectionChangeEvent.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "SCROLL_TYPE_TOP_LEFT",
            "value": 0
          },
          {
            "name": "SCROLL_TYPE_BOTTOM_RIGHT",
            "value": 1
          },
          {
            "name": "SCROLL_TYPE_TOP_EDGE",
            "value": 2
          },
          {
            "name": "SCROLL_TYPE_BOTTOM_EDGE",
            "value": 3
          },
          {
            "name": "SCROLL_TYPE_LEFT_EDGE",
            "value": 4
          },
          {
            "name": "SCROLL_TYPE_RIGHT_EDGE",
            "value": 5
          },
          {
            "name": "SCROLL_TYPE_ANYWHERE",
            "value": 6
          }
        ],
        "enums": [],
        "id": "nsIAccessibleScrollType",
        "members": []
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "COORDTYPE_SCREEN_RELATIVE",
            "value": 0
          },
          {
            "name": "COORDTYPE_WINDOW_RELATIVE",
            "value": 1
          },
          {
            "name": "COORDTYPE_PARENT_RELATIVE",
            "value": 2
          }
        ],
        "enums": [],
        "id": "nsIAccessibleCoordinateType",
        "members": []
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleTypes.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIAccessibleValue",
        "members": [
          {
            "name": "maximumValue",
            "readonly": true,
            "type": "double"
          },
          {
            "name": "minimumValue",
            "readonly": true,
            "type": "double"
          },
          {
            "name": "currentValue",
            "readonly": false,
            "type": "double"
          },
          {
            "name": "minimumIncrement",
            "readonly": true,
            "type": "double"
          }
        ]
      }
    ],
    "path": "accessible/interfaces/nsIAccessibleValue.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]