[
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "TRANSACTION_DEFAULT",
            "value": -1
          },
          {
            "name": "TRANSACTION_DEFERRED",
            "value": 0
          },
          {
            "name": "TRANSACTION_IMMEDIATE",
            "value": 1
          },
          {
            "name": "TRANSACTION_EXCLUSIVE",
            "value": 2
          }
        ],
        "enums": [],
        "id": "mozIStorageAsyncConnection",
        "members": [
          {
            "name": "defaultTransactionType",
            "readonly": false,
            "type": "i32"
          },
          {
            "name": "variableLimit",
            "readonly": false,
            "type": "i32"
          },
          {
            "name": "transactionInProgress",
            "readonly": true,
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageCompletionCallback"
              }
            ],
            "iid_is": null,
            "name": "asyncClose",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aReadOnly",
                "optional": false,
                "type": "boolean"
              },
              {
                "name": "aCallback",
                "optional": false,
                "type": "mozIStorageCompletionCallback"
              }
            ],
            "iid_is": null,
            "name": "asyncClone",
            "type": "void"
          },
          {
            "name": "databaseFile",
            "readonly": true,
            "type": "nsIFile"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "interrupt",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageCompletionCallback"
              },
              {
                "name": "aUseIncremental",
                "optional": true,
                "type": "boolean"
              },
              {
                "name": "aSetPageSize",
                "optional": true,
                "type": "i32"
              }
            ],
            "iid_is": null,
            "name": "asyncVacuum",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aSQLStatement",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "createAsyncStatement",
            "type": "mozIStorageAsyncStatement"
          },
          {
            "args": [
              {
                "name": "aStatements",
                "optional": false,
                "type": "mozIStorageBaseStatement[]"
              },
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageStatementCallback"
              }
            ],
            "iid_is": null,
            "name": "executeAsync",
            "type": "mozIStoragePendingStatement"
          },
          {
            "args": [
              {
                "name": "aSQLStatement",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageStatementCallback"
              }
            ],
            "iid_is": null,
            "name": "executeSimpleSQLAsync",
            "type": "mozIStoragePendingStatement"
          },
          {
            "args": [
              {
                "name": "aExtensionName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageCompletionCallback"
              }
            ],
            "iid_is": null,
            "name": "loadExtension",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aFunctionName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aNumArguments",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aFunction",
                "optional": false,
                "type": "mozIStorageFunction"
              }
            ],
            "iid_is": null,
            "name": "createFunction",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aFunctionName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "removeFunction",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aGranularity",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aHandler",
                "optional": false,
                "type": "mozIStorageProgressHandler"
              }
            ],
            "iid_is": null,
            "name": "setProgressHandler",
            "type": "mozIStorageProgressHandler"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "removeProgressHandler",
            "type": "mozIStorageProgressHandler"
          },
          {
            "args": [
              {
                "name": "aDestinationFile",
                "optional": false,
                "type": "nsIFile"
              },
              {
                "name": "aCallback",
                "optional": false,
                "type": "mozIStorageCompletionCallback"
              },
              {
                "name": "aPagesPerStep",
                "optional": true,
                "type": "u32"
              },
              {
                "name": "aStepDelayMs",
                "optional": true,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "backupToFileAsync",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aPath",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageStatementCallback"
              }
            ],
            "iid_is": null,
            "name": "attachDatabase",
            "type": "mozIStoragePendingStatement"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageAsyncConnection.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "mozIStorageBaseStatement",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageAsyncStatement",
        "members": []
      }
    ],
    "path": "storage/mozIStorageAsyncStatement.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "mozIStorageBindingParams",
        "callable": false,
        "consts": [
          {
            "name": "MOZ_STORAGE_STATEMENT_INVALID",
            "value": 0
          },
          {
            "name": "MOZ_STORAGE_STATEMENT_READY",
            "value": 1
          },
          {
            "name": "MOZ_STORAGE_STATEMENT_EXECUTING",
            "value": 2
          }
        ],
        "enums": [],
        "id": "mozIStorageBaseStatement",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "finalize",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aParameters",
                "optional": false,
                "type": "mozIStorageBindingParamsArray"
              }
            ],
            "iid_is": null,
            "name": "bindParameters",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "newBindingParamsArray",
            "type": "mozIStorageBindingParamsArray"
          },
          {
            "args": [
              {
                "name": "aCallback",
                "optional": true,
                "type": "mozIStorageStatementCallback"
              }
            ],
            "iid_is": null,
            "name": "executeAsync",
            "type": "mozIStoragePendingStatement"
          },
          {
            "name": "state",
            "readonly": true,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aEscapeChar",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "escapeStringForLIKE",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aEscapeChar",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "escapeUTF8StringForLIKE",
            "type": "string"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageBaseStatement.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageBindingParams",
        "members": [
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "nsIVariant"
              }
            ],
            "iid_is": null,
            "name": "bindByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "u8[]"
              }
            ],
            "iid_is": null,
            "name": "bindBlobByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "bindStringAsBlobByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "bindUTF8StringAsBlobByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "i64[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfIntegersByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "double[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfDoublesByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfStringsByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfUTF8StringsByName",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "nsIVariant"
              }
            ],
            "iid_is": null,
            "name": "bindByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "u8[]"
              }
            ],
            "iid_is": null,
            "name": "bindBlobByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "bindStringAsBlobByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "bindUTF8StringAsBlobByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "i64[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfIntegersByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "double[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfDoublesByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfStringsByIndex",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aValue",
                "optional": false,
                "type": "string[]"
              }
            ],
            "iid_is": null,
            "name": "bindArrayOfUTF8StringsByIndex",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageBindingParams.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageBindingParamsArray",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "newBindingParams",
            "type": "mozIStorageBindingParams"
          },
          {
            "args": [
              {
                "name": "aParameters",
                "optional": false,
                "type": "mozIStorageBindingParams"
              }
            ],
            "iid_is": null,
            "name": "addParams",
            "type": "void"
          },
          {
            "name": "length",
            "readonly": true,
            "type": "u32"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageBindingParamsArray.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": true,
        "consts": [],
        "enums": [],
        "id": "mozIStorageCompletionCallback",
        "members": [
          {
            "args": [
              {
                "name": "status",
                "optional": false,
                "type": "nsresult"
              },
              {
                "name": "value",
                "optional": true,
                "type": "nsISupports"
              }
            ],
            "iid_is": null,
            "name": "complete",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageCompletionCallback.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "mozIStorageAsyncConnection",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageConnection",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "close",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aReadOnly",
                "optional": true,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "clone",
            "type": "mozIStorageConnection"
          },
          {
            "name": "defaultPageSize",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "connectionReady",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "lastInsertRowID",
            "readonly": true,
            "type": "i64"
          },
          {
            "name": "affectedRows",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "lastError",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "lastErrorString",
            "readonly": true,
            "type": "string"
          },
          {
            "name": "schemaVersion",
            "readonly": false,
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aSQLStatement",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "createStatement",
            "type": "mozIStorageStatement"
          },
          {
            "args": [
              {
                "name": "aSQLStatement",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "executeSimpleSQL",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aTableName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "tableExists",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aIndexName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "indexExists",
            "type": "boolean"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "beginTransaction",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "commitTransaction",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "rollbackTransaction",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aTableName",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aTableSchema",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "createTable",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIncrement",
                "optional": false,
                "type": "i32"
              },
              {
                "name": "aDatabaseName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "setGrowthIncrement",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageConnection.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "ERROR",
            "value": 1
          },
          {
            "name": "INTERNAL",
            "value": 2
          },
          {
            "name": "PERM",
            "value": 3
          },
          {
            "name": "ABORT",
            "value": 4
          },
          {
            "name": "BUSY",
            "value": 5
          },
          {
            "name": "LOCKED",
            "value": 6
          },
          {
            "name": "NOMEM",
            "value": 7
          },
          {
            "name": "READONLY",
            "value": 8
          },
          {
            "name": "INTERRUPT",
            "value": 9
          },
          {
            "name": "IOERR",
            "value": 10
          },
          {
            "name": "CORRUPT",
            "value": 11
          },
          {
            "name": "FULL",
            "value": 13
          },
          {
            "name": "CANTOPEN",
            "value": 14
          },
          {
            "name": "EMPTY",
            "value": 16
          },
          {
            "name": "SCHEMA",
            "value": 17
          },
          {
            "name": "TOOBIG",
            "value": 18
          },
          {
            "name": "CONSTRAINT",
            "value": 19
          },
          {
            "name": "MISMATCH",
            "value": 20
          },
          {
            "name": "MISUSE",
            "value": 21
          },
          {
            "name": "NOLFS",
            "value": 22
          },
          {
            "name": "AUTH",
            "value": 23
          },
          {
            "name": "FORMAT",
            "value": 24
          },
          {
            "name": "RANGE",
            "value": 25
          },
          {
            "name": "NOTADB",
            "value": 26
          }
        ],
        "enums": [],
        "id": "mozIStorageError",
        "members": [
          {
            "name": "result",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "message",
            "readonly": true,
            "type": "string"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageError.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": true,
        "consts": [],
        "enums": [],
        "id": "mozIStorageFunction",
        "members": [
          {
            "args": [
              {
                "name": "aFunctionArguments",
                "optional": false,
                "type": "mozIStorageValueArray"
              }
            ],
            "iid_is": null,
            "name": "onFunctionCall",
            "type": "nsIVariant"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageFunction.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStoragePendingStatement",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "cancel",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStoragePendingStatement.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageProgressHandler",
        "members": [
          {
            "args": [
              {
                "name": "aConnection",
                "optional": false,
                "type": "mozIStorageConnection"
              }
            ],
            "iid_is": null,
            "name": "onProgress",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageProgressHandler.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageResultSet",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "getNextRow",
            "type": "mozIStorageRow"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageResultSet.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "mozIStorageValueArray",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageRow",
        "members": [
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getResultByIndex",
            "type": "nsIVariant"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getResultByName",
            "type": "nsIVariant"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageRow.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "OPEN_DEFAULT",
            "value": 0
          },
          {
            "name": "OPEN_SHARED",
            "value": 1
          },
          {
            "name": "OPEN_READONLY",
            "value": 2
          },
          {
            "name": "OPEN_IGNORE_LOCKING_MODE",
            "value": 4
          },
          {
            "name": "OPEN_NOT_EXCLUSIVE",
            "value": 8
          },
          {
            "name": "CONNECTION_DEFAULT",
            "value": 0
          },
          {
            "name": "CONNECTION_INTERRUPTIBLE",
            "value": 1
          }
        ],
        "enums": [],
        "id": "mozIStorageService",
        "members": [
          {
            "args": [
              {
                "name": "aDatabaseStore",
                "optional": false,
                "type": "nsIVariant"
              },
              {
                "name": "aOpenFlags",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aConnectionFlags",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aCallback",
                "optional": false,
                "type": "mozIStorageCompletionCallback"
              }
            ],
            "iid_is": null,
            "name": "openAsyncDatabase",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aStorageKey",
                "optional": false,
                "type": "string"
              },
              {
                "name": "aName",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aConnectionFlags",
                "optional": true,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "openSpecialDatabase",
            "type": "mozIStorageConnection"
          },
          {
            "args": [
              {
                "name": "aDatabaseFile",
                "optional": false,
                "type": "nsIFile"
              },
              {
                "name": "aConnectionFlags",
                "optional": true,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "openDatabase",
            "type": "mozIStorageConnection"
          },
          {
            "args": [
              {
                "name": "aDatabaseFile",
                "optional": false,
                "type": "nsIFile"
              },
              {
                "name": "aConnectionFlags",
                "optional": true,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "openUnsharedDatabase",
            "type": "mozIStorageConnection"
          },
          {
            "args": [
              {
                "name": "aFileURL",
                "optional": false,
                "type": "nsIFileURL"
              },
              {
                "name": "aTelemetryFilename",
                "optional": true,
                "type": "string"
              },
              {
                "name": "aConnectionFlags",
                "optional": true,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "openDatabaseWithFileURL",
            "type": "mozIStorageConnection"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageService.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "mozIStorageBaseStatement",
        "callable": false,
        "consts": [
          {
            "name": "VALUE_TYPE_NULL",
            "value": 0
          },
          {
            "name": "VALUE_TYPE_INTEGER",
            "value": 1
          },
          {
            "name": "VALUE_TYPE_FLOAT",
            "value": 2
          },
          {
            "name": "VALUE_TYPE_TEXT",
            "value": 3
          },
          {
            "name": "VALUE_TYPE_BLOB",
            "value": 4
          }
        ],
        "enums": [],
        "id": "mozIStorageStatement",
        "members": [
          {
            "args": [],
            "iid_is": null,
            "name": "clone",
            "type": "mozIStorageStatement"
          },
          {
            "name": "parameterCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aParamIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getParameterName",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getParameterIndex",
            "type": "u32"
          },
          {
            "name": "columnCount",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aColumnIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getColumnName",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aName",
                "optional": false,
                "type": "string"
              }
            ],
            "iid_is": null,
            "name": "getColumnIndex",
            "type": "u32"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "reset",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "execute",
            "type": "void"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "executeStep",
            "type": "boolean"
          },
          {
            "name": "numEntries",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getTypeOfIndex",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getVariant",
            "type": "nsIVariant"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getInt32",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getInt64",
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getDouble",
            "type": "double"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getUTF8String",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getString",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aDataSize",
                "optional": false,
                "type": "OutParam<u32>"
              },
              {
                "name": "aData",
                "optional": false,
                "type": "OutParam<u8[]>"
              }
            ],
            "iid_is": null,
            "name": "getBlob",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getBlobAsString",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getBlobAsUTF8String",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getIsNull",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageStatement.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "REASON_FINISHED",
            "value": 0
          },
          {
            "name": "REASON_CANCELED",
            "value": 1
          },
          {
            "name": "REASON_ERROR",
            "value": 2
          }
        ],
        "enums": [],
        "id": "mozIStorageStatementCallback",
        "members": [
          {
            "args": [
              {
                "name": "aResultSet",
                "optional": false,
                "type": "mozIStorageResultSet"
              }
            ],
            "iid_is": null,
            "name": "handleResult",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aError",
                "optional": false,
                "type": "mozIStorageError"
              }
            ],
            "iid_is": null,
            "name": "handleError",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aReason",
                "optional": false,
                "type": "u16"
              }
            ],
            "iid_is": null,
            "name": "handleCompletion",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageStatementCallback.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [],
        "enums": [],
        "id": "mozIStorageVacuumParticipant",
        "members": [
          {
            "name": "expectedDatabasePageSize",
            "readonly": true,
            "type": "i32"
          },
          {
            "name": "useIncrementalVacuum",
            "readonly": true,
            "type": "boolean"
          },
          {
            "name": "databaseConnection",
            "readonly": true,
            "type": "mozIStorageAsyncConnection"
          },
          {
            "args": [],
            "iid_is": null,
            "name": "onBeginVacuum",
            "type": "boolean"
          },
          {
            "args": [
              {
                "name": "aSucceeded",
                "optional": false,
                "type": "boolean"
              }
            ],
            "iid_is": null,
            "name": "onEndVacuum",
            "type": "void"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageVacuumParticipant.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  },
  {
    "interfaces": [
      {
        "base": "nsISupports",
        "callable": false,
        "consts": [
          {
            "name": "VALUE_TYPE_NULL",
            "value": 0
          },
          {
            "name": "VALUE_TYPE_INTEGER",
            "value": 1
          },
          {
            "name": "VALUE_TYPE_FLOAT",
            "value": 2
          },
          {
            "name": "VALUE_TYPE_TEXT",
            "value": 3
          },
          {
            "name": "VALUE_TYPE_BLOB",
            "value": 4
          }
        ],
        "enums": [],
        "id": "mozIStorageValueArray",
        "members": [
          {
            "name": "numEntries",
            "readonly": true,
            "type": "u32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getTypeOfIndex",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getInt32",
            "type": "i32"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getInt64",
            "type": "i64"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getDouble",
            "type": "double"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getUTF8String",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getString",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              },
              {
                "name": "aDataSize",
                "optional": false,
                "type": "OutParam<u32>"
              },
              {
                "name": "aData",
                "optional": false,
                "type": "OutParam<u8[]>"
              }
            ],
            "iid_is": null,
            "name": "getBlob",
            "type": "void"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getBlobAsString",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getBlobAsUTF8String",
            "type": "string"
          },
          {
            "args": [
              {
                "name": "aIndex",
                "optional": false,
                "type": "u32"
              }
            ],
            "iid_is": null,
            "name": "getIsNull",
            "type": "boolean"
          }
        ]
      }
    ],
    "path": "storage/mozIStorageValueArray.idl",
    "typedefs": [
      [
        "PRTime",
        "i64"
      ]
    ]
  }
]