[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIVisitInfo",
        "members": [
          {
            "name": "visitId",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "visitDate",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "transitionType",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "referrerURI",
            "readonly": true,
            "type": "nsIURI"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIPlaceInfo",
        "members": [
          {
            "name": "placeId",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "guid",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "uri",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "title",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "frecency",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "visits",
            "readonly": true,
            "type": "any"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIVisitInfoCallback",
        "members": [
          {
            "args": [
              {
                "name": "aResultCode",
                "optional": false,
                "type": "nsresult"
              },
              {
                "name": "aPlaceInfo",
                "optional": false,
                "type": "mozIPlaceInfo"
              }
            ],
            "iid_is": null,
            "name": "handleError",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aPlaceInfo",
                "optional": false,
                "type": "mozIPlaceInfo"
              }
            ],
            "iid_is": null,
            "name": "handleResult",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aUpdatedItems",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "handleCompletion",
            "type": "void"
          },
          {
            "name": "ignoreResults",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "ignoreErrors",
            "readonly": true,
            "type": "boolean"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": true,
        "consts": [],
        "enums": [],
        "id": "mozIVisitedStatusCallback",
        "members": [
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aVisitedStatus",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "isVisited",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIAsyncHistory",
        "members": [
          {
            "args": [
              {
                "name": "aPlaceInfo",
                "optional": false,
                "type": "any"
              },
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIVisitInfoCallback"
              }
            ],
            "iid_is": null,
            "name": "updatePlaces",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aCallback",
                "optional": false,
                "type": "mozIVisitedStatusCallback"
              }
            ],
            "iid_is": null,
            "name": "isURIVisited",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "clearCache",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/mozIAsyncHistory.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [
          {
            "id": "MatchBehaviors",
            "variants": [
              {
                "name": "MATCH_ANYWHERE",
                "value": 0
              },
              {
                "name": "MATCH_BOUNDARY",
                "value": 2
              },
              {
                "name": "MATCH_ANYWHERE_UNMODIFIED",
                "value": 4
              }
            ]
          },
          {
            "id": "SearchBehaviors",
            "variants": [
              {
                "name": "BEHAVIOR_HISTORY",
                "value": 1
              },
              {
                "name": "BEHAVIOR_BOOKMARK",
                "value": 2
              },
              {
                "name": "BEHAVIOR_TAG",
                "value": 4
              },
              {
                "name": "BEHAVIOR_TITLE",
                "value": 8
              },
              {
                "name": "BEHAVIOR_URL",
                "value": 16
              },
              {
                "name": "BEHAVIOR_TYPED",
                "value": 32
              },
              {
                "name": "BEHAVIOR_JAVASCRIPT",
                "value": 64
              },
              {
                "name": "BEHAVIOR_OPENPAGE",
                "value": 128
              },
              {
                "name": "BEHAVIOR_RESTRICT",
                "value": 256
              },
              {
                "name": "BEHAVIOR_SEARCH",
                "value": 512
              }
            ]
          }
        ],
        "id": "mozIPlacesAutoComplete",
        "members": []
      }
    ],
    "path": "toolkit/components/places/mozIPlacesAutoComplete.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIPlacesPendingOperation",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "cancel",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/mozIPlacesPendingOperation.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozISyncedBookmarksMirrorProgressListener",
        "members": [
          {
            "args": [
              {
                "name": "took",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "itemCount",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "deletedCount",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "problems",
                "optional": false,
                "type": "nsIPropertyBag"
              }
            ],
            "iid_is": null,
            "name": "onFetchLocalTree",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "took",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "itemCount",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "deletedCount",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "problems",
                "optional": false,
                "type": "nsIPropertyBag"
              }
            ],
            "iid_is": null,
            "name": "onFetchRemoteTree",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "took",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "counts",
                "optional": false,
                "type": "nsIPropertyBag"
              }
            ],
            "iid_is": null,
            "name": "onMerge",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "took",
                "optional": false,
                "type": "i64"
              }
            ],
            "iid_is": null,
            "name": "onApply",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozISyncedBookmarksMirrorCallback",
        "members": [
          {
            "args": [
              {
                "name": "result",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "handleSuccess",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "code",
                "optional": false,
                "type": "nsresult"
              },
              {
                "name": "message",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "handleError",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [
          {
            "id": "SyncedItemKinds",
            "variants": [
              {
                "name": "KIND_BOOKMARK",
                "value": 1
              },
              {
                "name": "KIND_QUERY",
                "value": 2
              },
              {
                "name": "KIND_FOLDER",
                "value": 3
              },
              {
                "name": "KIND_LIVEMARK",
                "value": 4
              },
              {
                "name": "KIND_SEPARATOR",
                "value": 5
              }
            ]
          },
          {
            "id": "SyncedItemValidity",
            "variants": [
              {
                "name": "VALIDITY_VALID",
                "value": 1
              },
              {
                "name": "VALIDITY_REUPLOAD",
                "value": 2
              },
              {
                "name": "VALIDITY_REPLACE",
                "value": 3
              }
            ]
          }
        ],
        "id": "mozISyncedBookmarksMerger",
        "members": [
          {
            "name": "db",
            "readonly": false,
            "type": "mozIStorageConnection"
          },
          {
            "args": [
              {
                "name": "localTimeSeconds",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "remoteTimeSeconds",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "callback",
                "optional": false,
                "type": "mozISyncedBookmarksMirrorCallback"
              }
            ],
            "iid_is": null,
            "name": "merge",
            "type": "mozIPlacesPendingOperation"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "reset",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/mozISyncedBookmarksMirror.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "FAVICON_LOAD_PRIVATE",
            "value": 1
          },
          {
            "name": "FAVICON_LOAD_NON_PRIVATE",
            "value": 2
          },
          {
            "name": "ICONDATA_FLAGS_RICH",
            "value": 1
          },
          {
            "name": "MAX_FAVICON_BUFFER_SIZE",
            "value": 65536
          }
        ],
        "enums": [],
        "id": "nsIFaviconService",
        "members": [
          {
            "args": [
              {
                "name": "aFaviconURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "getFaviconLinkForIcon",
            "type": "nsIURI"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "expireAllFavicons",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aDefaultSize",
                "optional": false,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "setDefaultIconURIPreferredSize",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "preferredSizeFromURI",
            "type": "u16"
          },
          {
            "name": "defaultFavicon",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "defaultFaviconMimeType",
            "readonly": true,
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aPageURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aFaviconURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aDataURL",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aExpiration",
                "optional": true,
                "type": "PRTime"
              },
              {
                "name": "isRichIcon",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "setFaviconForPage",
            "type": "Promise<any>"
          },
          {
            "args": [
              {
                "name": "aPageURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aPreferredWidth",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "getFaviconForPage",
            "type": "Promise<any>"
          },
          {
            "args": [
              {
                "name": "aPageURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "expireFaviconsForPage",
            "type": "Promise<any>"
          },
          {
            "args": [
              {
                "name": "aFromPageURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aToPageURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aFaviconLoadType",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "tryCopyFavicons",
            "type": "Promise<any>"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIFavicon",
        "members": [
          {
            "name": "uri",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "dataURI",
            "readonly": true,
            "type": "nsIURI"
          },
          {
            "name": "rawData",
            "readonly": true,
            "type": "u8[]"
          },
          {
            "name": "mimeType",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "width",
            "readonly": true,
            "type": "u16"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/nsIFaviconService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "DEFAULT_INDEX",
            "value": -1
          },
          {
            "name": "SYNC_STATUS_UNKNOWN",
            "value": 0
          },
          {
            "name": "SYNC_STATUS_NEW",
            "value": 1
          },
          {
            "name": "SYNC_STATUS_NORMAL",
            "value": 2
          }
        ],
        "enums": [
          {
            "id": "BookmarkType",
            "variants": [
              {
                "name": "TYPE_BOOKMARK",
                "value": 1
              },
              {
                "name": "TYPE_FOLDER",
                "value": 2
              },
              {
                "name": "TYPE_SEPARATOR",
                "value": 3
              },
              {
                "name": "TYPE_DYNAMIC_CONTAINER",
                "value": 4
              }
            ]
          },
          {
            "id": "ChangeSource",
            "variants": [
              {
                "name": "SOURCE_DEFAULT",
                "value": 0
              },
              {
                "name": "SOURCE_SYNC",
                "value": 1
              },
              {
                "name": "SOURCE_IMPORT",
                "value": 2
              },
              {
                "name": "SOURCE_SYNC_REPARENT_REMOVED_FOLDER_CHILDREN",
                "value": 4
              },
              {
                "name": "SOURCE_RESTORE",
                "value": 5
              },
              {
                "name": "SOURCE_RESTORE_ON_STARTUP",
                "value": 6
              }
            ]
          }
        ],
        "id": "nsINavBookmarksService",
        "members": [
          {
            "name": "tagsFolder",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "totalSyncChanges",
            "readonly": true,
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aParentId",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aIndex",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aTitle",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aGuid",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "insertBookmark",
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aItemId",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "removeItem",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aParentFolder",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "name",
                "optional": false,
                "type": "string"
              },
              {
                "name": "index",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aGuid",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "createFolder",
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aItemId",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "aTitle",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "setItemTitle",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aItemId",
                "optional": false,
                "type": "i64"
              }
            ],
            "iid_is": null,
            "name": "getItemTitle",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aItemId",
                "optional": false,
                "type": "i64"
              },
              {
                "name": "aLastModified",
                "optional": false,
                "type": "PRTime"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "setItemLastModified",
            "type": "void"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/nsINavBookmarksService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [
          {
            "id": "ResultType",
            "variants": [
              {
                "name": "RESULT_TYPE_URI",
                "value": 0
              },
              {
                "name": "RESULT_TYPE_QUERY",
                "value": 5
              },
              {
                "name": "RESULT_TYPE_FOLDER",
                "value": 6
              },
              {
                "name": "RESULT_TYPE_SEPARATOR",
                "value": 7
              },
              {
                "name": "RESULT_TYPE_FOLDER_SHORTCUT",
                "value": 9
              }
            ]
          }
        ],
        "id": "nsINavHistoryResultNode",
        "members": [
          {
            "name": "parent",
            "readonly": true,
            "type": "nsINavHistoryContainerResultNode"
          },
          {
            "name": "parentResult",
            "readonly": true,
            "type": "nsINavHistoryResult"
          },
          {
            "name": "uri",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "type",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "title",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "accessCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "time",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "icon",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "indentLevel",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "bookmarkIndex",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "itemId",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "dateAdded",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "lastModified",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "tags",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "pageGuid",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "bookmarkGuid",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "visitId",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "visitType",
            "readonly": true,
            "type": "u32"
          }
        ]
      },
      {
        "base": "nsINavHistoryResultNode",
        "callable": false,
        "consts": [
          {
            "name": "STATE_CLOSED",
            "value": 0
          },
          {
            "name": "STATE_LOADING",
            "value": 1
          },
          {
            "name": "STATE_OPENED",
            "value": 2
          }
        ],
        "enums": [],
        "id": "nsINavHistoryContainerResultNode",
        "members": [
          {
            "name": "containerOpen",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "state",
            "readonly": true,
            "type": "u16"
          },
          {
            "name": "hasChildren",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "childCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getChild",
            "type": "nsINavHistoryResultNode"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              }
            ],
            "iid_is": null,
            "name": "getChildIndex",
            "type": "u32"
          }
        ]
      },
      {
        "base": "nsINavHistoryContainerResultNode",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsINavHistoryQueryResultNode",
        "members": [
          {
            "name": "query",
            "readonly": true,
            "type": "nsINavHistoryQuery"
          },
          {
            "name": "queryOptions",
            "readonly": true,
            "type": "nsINavHistoryQueryOptions"
          },
          {
            "name": "folderItemId",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "targetFolderGuid",
            "readonly": true,
            "type": "string"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsINavHistoryResultObserver",
        "members": [
          {
            "name": "skipHistoryDetailsNotifications",
            "readonly": true,
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aParent",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              },
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aNewIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "nodeInserted",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aParent",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              },
              {
                "name": "aItem",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aOldIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "nodeRemoved",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aOldParent",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              },
              {
                "name": "aOldIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aNewParent",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              },
              {
                "name": "aNewIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "nodeMoved",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aNewTitle",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "nodeTitleChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aOldURI",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "nodeURIChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              }
            ],
            "iid_is": null,
            "name": "nodeIconChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aOldVisitDate",
                "optional": false,
                "type": "PRTime"
              },
              {
                "name": "aOldAccessCount",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "nodeHistoryDetailsChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              }
            ],
            "iid_is": null,
            "name": "nodeTagsChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aNewKeyword",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "nodeKeywordChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aNewValue",
                "optional": false,
                "type": "PRTime"
              }
            ],
            "iid_is": null,
            "name": "nodeDateAddedChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aNode",
                "optional": false,
                "type": "nsINavHistoryResultNode"
              },
              {
                "name": "aNewValue",
                "optional": false,
                "type": "PRTime"
              }
            ],
            "iid_is": null,
            "name": "nodeLastModifiedChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aContainerNode",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              },
              {
                "name": "aOldState",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aNewState",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "containerStateChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aContainerNode",
                "optional": false,
                "type": "nsINavHistoryContainerResultNode"
              }
            ],
            "iid_is": null,
            "name": "invalidateContainer",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "sortingMode",
                "optional": false,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "sortingChanged",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aToggleMode",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "batching",
            "type": "void"
          },
          {
            "name": "result",
            "readonly": false,
            "type": "nsINavHistoryResult"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsINavHistoryResult",
        "members": [
          {
            "name": "sortingMode",
            "readonly": false,
            "type": "u16"
          },
          {
            "name": "suppressNotifications",
            "readonly": false,
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aObserver",
                "optional": false,
                "type": "nsINavHistoryResultObserver"
              },
              {
                "name": "aOwnsWeak",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "addObserver",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aObserver",
                "optional": false,
                "type": "nsINavHistoryResultObserver"
              }
            ],
            "iid_is": null,
            "name": "removeObserver",
            "type": "void"
          },
          {
            "name": "root",
            "readonly": true,
            "type": "nsINavHistoryContainerResultNode"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onBeginUpdateBatch",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onEndUpdateBatch",
            "type": "void"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "TIME_RELATIVE_EPOCH",
            "value": 0
          },
          {
            "name": "TIME_RELATIVE_TODAY",
            "value": 1
          },
          {
            "name": "TIME_RELATIVE_NOW",
            "value": 2
          }
        ],
        "enums": [],
        "id": "nsINavHistoryQuery",
        "members": [
          {
            "name": "beginTime",
            "readonly": false,
            "type": "PRTime"
          },
          {
            "name": "beginTimeReference",
            "readonly": false,
            "type": "u32"
          },
          {
            "name": "hasBeginTime",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "absoluteBeginTime",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "endTime",
            "readonly": false,
            "type": "PRTime"
          },
          {
            "name": "endTimeReference",
            "readonly": false,
            "type": "u32"
          },
          {
            "name": "hasEndTime",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "absoluteEndTime",
            "readonly": true,
            "type": "PRTime"
          },
          {
            "name": "searchTerms",
            "readonly": false,
            "type": "string"
          },
          {
            "name": "hasSearchTerms",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "minVisits",
            "readonly": false,
            "type": "i32"
          },
          {
            "name": "maxVisits",
            "readonly": false,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "transitions",
                "optional": false,
                "type": "u32[]"
              }
            ],
            "iid_is": null,
            "name": "setTransitions",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getTransitions",
            "type": "u32[]"
          },
          {
            "name": "transitionCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "name": "domainIsHost",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "domain",
            "readonly": false,
            "type": "string"
          },
          {
            "name": "hasDomain",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "uri",
            "readonly": false,
            "type": "nsIURI"
          },
          {
            "name": "hasUri",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "tags",
            "readonly": false,
            "type": "nsIVariant"
          },
          {
            "name": "tagsAreNot",
            "readonly": false,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getParents",
            "type": "string[]"
          },
          {
            "name": "parentCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aGuids",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "setParents",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "clone",
            "type": "nsINavHistoryQuery"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "QUERY_TYPE_HISTORY",
            "value": 0
          },
          {
            "name": "QUERY_TYPE_BOOKMARKS",
            "value": 1
          }
        ],
        "enums": [
          {
            "id": "SortByType",
            "variants": [
              {
                "name": "SORT_BY_NONE",
                "value": 0
              },
              {
                "name": "SORT_BY_TITLE_ASCENDING",
                "value": 1
              },
              {
                "name": "SORT_BY_TITLE_DESCENDING",
                "value": 2
              },
              {
                "name": "SORT_BY_DATE_ASCENDING",
                "value": 3
              },
              {
                "name": "SORT_BY_DATE_DESCENDING",
                "value": 4
              },
              {
                "name": "SORT_BY_URI_ASCENDING",
                "value": 5
              },
              {
                "name": "SORT_BY_URI_DESCENDING",
                "value": 6
              },
              {
                "name": "SORT_BY_VISITCOUNT_ASCENDING",
                "value": 7
              },
              {
                "name": "SORT_BY_VISITCOUNT_DESCENDING",
                "value": 8
              },
              {
                "name": "SORT_BY_DATEADDED_ASCENDING",
                "value": 11
              },
              {
                "name": "SORT_BY_DATEADDED_DESCENDING",
                "value": 12
              },
              {
                "name": "SORT_BY_LASTMODIFIED_ASCENDING",
                "value": 13
              },
              {
                "name": "SORT_BY_LASTMODIFIED_DESCENDING",
                "value": 14
              },
              {
                "name": "SORT_BY_TAGS_ASCENDING",
                "value": 17
              },
              {
                "name": "SORT_BY_TAGS_DESCENDING",
                "value": 18
              },
              {
                "name": "SORT_BY_FRECENCY_ASCENDING",
                "value": 21
              },
              {
                "name": "SORT_BY_FRECENCY_DESCENDING",
                "value": 22
              }
            ]
          },
          {
            "id": "ResultType",
            "variants": [
              {
                "name": "RESULTS_AS_URI",
                "value": 0
              },
              {
                "name": "RESULTS_AS_VISIT",
                "value": 1
              },
              {
                "name": "RESULTS_AS_DATE_QUERY",
                "value": 3
              },
              {
                "name": "RESULTS_AS_SITE_QUERY",
                "value": 4
              },
              {
                "name": "RESULTS_AS_DATE_SITE_QUERY",
                "value": 5
              },
              {
                "name": "RESULTS_AS_TAGS_ROOT",
                "value": 6
              },
              {
                "name": "RESULTS_AS_TAG_CONTENTS",
                "value": 7
              },
              {
                "name": "RESULTS_AS_ROOTS_QUERY",
                "value": 8
              },
              {
                "name": "RESULTS_AS_LEFT_PANE_QUERY",
                "value": 9
              }
            ]
          }
        ],
        "id": "nsINavHistoryQueryOptions",
        "members": [
          {
            "name": "sortingMode",
            "readonly": false,
            "type": "u16"
          },
          {
            "name": "resultType",
            "readonly": false,
            "type": "u16"
          },
          {
            "name": "excludeItems",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "excludeQueries",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "expandQueries",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "includeHidden",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "maxResults",
            "readonly": false,
            "type": "u32"
          },
          {
            "name": "queryType",
            "readonly": false,
            "type": "u16"
          },
          {
            "name": "asyncEnabled",
            "readonly": false,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "clone",
            "type": "nsINavHistoryQueryOptions"
          }
        ]
      },
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "DATABASE_SCHEMA_VERSION",
            "value": 87
          },
          {
            "name": "DATABASE_STATUS_OK",
            "value": 0
          },
          {
            "name": "DATABASE_STATUS_CREATE",
            "value": 1
          },
          {
            "name": "DATABASE_STATUS_CORRUPT",
            "value": 2
          },
          {
            "name": "DATABASE_STATUS_UPGRADED",
            "value": 3
          },
          {
            "name": "DATABASE_STATUS_LOCKED",
            "value": 4
          },
          {
            "name": "VISIT_SOURCE_ORGANIC",
            "value": 0
          },
          {
            "name": "VISIT_SOURCE_SPONSORED",
            "value": 1
          },
          {
            "name": "VISIT_SOURCE_BOOKMARKED",
            "value": 2
          },
          {
            "name": "VISIT_SOURCE_SEARCHED",
            "value": 3
          }
        ],
        "enums": [
          {
            "id": "TransitionType",
            "variants": [
              {
                "name": "TRANSITION_LINK",
                "value": 1
              },
              {
                "name": "TRANSITION_TYPED",
                "value": 2
              },
              {
                "name": "TRANSITION_BOOKMARK",
                "value": 3
              },
              {
                "name": "TRANSITION_EMBED",
                "value": 4
              },
              {
                "name": "TRANSITION_REDIRECT_PERMANENT",
                "value": 5
              },
              {
                "name": "TRANSITION_REDIRECT_TEMPORARY",
                "value": 6
              },
              {
                "name": "TRANSITION_DOWNLOAD",
                "value": 7
              },
              {
                "name": "TRANSITION_FRAMED_LINK",
                "value": 8
              },
              {
                "name": "TRANSITION_RELOAD",
                "value": 9
              }
            ]
          }
        ],
        "id": "nsINavHistoryService",
        "members": [
          {
            "name": "databaseStatus",
            "readonly": true,
            "type": "u16"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "markPageAsFollowedBookmark",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "markPageAsTyped",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "markPageAsFollowedLink",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "canAddURI",
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getNewQuery",
            "type": "nsINavHistoryQuery"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "getNewQueryOptions",
            "type": "nsINavHistoryQueryOptions"
          },
          {
            "args": [
              {
                "name": "aQuery",
                "optional": false,
                "type": "nsINavHistoryQuery"
              },
              {
                "name": "options",
                "optional": false,
                "type": "nsINavHistoryQueryOptions"
              }
            ],
            "iid_is": null,
            "name": "executeQuery",
            "type": "nsINavHistoryResult"
          },
          {
            "args": [
              {
                "name": "aQueryString",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aQuery",
                "optional": false,
                "type": "OutParam<nsINavHistoryQuery>"
              },
              {
                "name": "options",
                "optional": false,
                "type": "OutParam<nsINavHistoryQueryOptions>"
              }
            ],
            "iid_is": null,
            "name": "queryStringToQuery",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aQuery",
                "optional": false,
                "type": "nsINavHistoryQuery"
              },
              {
                "name": "options",
                "optional": false,
                "type": "nsINavHistoryQueryOptions"
              }
            ],
            "iid_is": null,
            "name": "queryToQueryString",
            "type": "string"
          },
          {
            "name": "historyDisabled",
            "readonly": true,
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "makeGuid",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aVisitAgeInDays",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aNumVisits",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aBookmarked",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "pageFrecencyThreshold",
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aSpec",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aMode",
                "optional": true,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "hashURL",
            "type": "u64"
          },
          {
            "name": "isAlternativeFrecencyEnabled",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "shouldStartFrecencyRecalculation",
            "readonly": false,
            "type": "boolean"
          },
          {
            "name": "DBConnection",
            "readonly": true,
            "type": "mozIStorageConnection"
          },
          {
            "args": [
              {
                "name": "aQuery",
                "optional": false,
                "type": "nsINavHistoryQuery"
              },
              {
                "name": "aOptions",
                "optional": false,
                "type": "nsINavHistoryQueryOptions"
              },
              {
                "name": "aCallback",
                "optional": false,
                "type": "mozIStorageStatementCallback"
              }
            ],
            "iid_is": null,
            "name": "asyncExecuteLegacyQuery",
            "type": "mozIStoragePendingStatement"
          },
          {
            "name": "shutdownClient",
            "readonly": true,
            "type": "nsIAsyncShutdownClient"
          },
          {
            "name": "connectionShutdownClient",
            "readonly": true,
            "type": "nsIAsyncShutdownClient"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/nsINavHistoryService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsIPlacesPreviewsHelperService",
        "members": [
          {
            "args": [
              {
                "name": "aURL",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getFilePathForURL",
            "type": "string"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/nsIPlacesPreviewsHelperService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "nsITaggingService",
        "members": [
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aTags",
                "optional": false,
                "type": "nsIVariant"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "tagURI",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              },
              {
                "name": "aTags",
                "optional": false,
                "type": "nsIVariant"
              },
              {
                "name": "aSource",
                "optional": true,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "untagURI",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aURI",
                "optional": false,
                "type": "nsIURI"
              }
            ],
            "iid_is": null,
            "name": "getTagsForURI",
            "type": "string[]"
          }
        ]
      }
    ],
    "path": "toolkit/components/places/nsITaggingService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]