/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "domstubs.idl" #include "nsIDOMEventTarget.idl" interface nsIDOMDOMRequest; interface nsIVariant; [scriptable, uuid(ef95ddd0-6308-11e1-b86c-0800200c9a66)] interface nsIDOMSettingsLock : nsISupports { // Whether this lock is invalid readonly attribute boolean closed; // Contains a JSON object with name/value pairs to be set. nsIDOMDOMRequest set(in nsIVariant settings); // result contains the value of the setting. nsIDOMDOMRequest get(in jsval name); nsIDOMDOMRequest clear(); }; [scriptable, uuid(c40b1c70-00fb-11e2-a21f-0800200c9a66)] interface nsIDOMSettingsManager : nsISupports { nsIDOMSettingsLock createLock(); void addObserver(in DOMString name, in jsval callback); void removeObserver(in DOMString name, in jsval callback); attribute nsIDOMEventListener onsettingchange; };