michael@0: /* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- michael@0: * michael@0: * This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: /* nsIVariant based writable Property Bag support. */ michael@0: michael@0: #include "nsIPropertyBag.idl" michael@0: michael@0: [scriptable, uuid(96fc4671-eeb4-4823-9421-e50fb70ad353)] michael@0: interface nsIWritablePropertyBag : nsIPropertyBag michael@0: { michael@0: /** michael@0: * Set a property with the given name to the given value. If michael@0: * a property already exists with the given name, it is michael@0: * overwritten. michael@0: */ michael@0: void setProperty(in AString name, in nsIVariant value); michael@0: michael@0: /** michael@0: * Delete a property with the given name. michael@0: * @throws NS_ERROR_FAILURE if a property with that name doesn't michael@0: * exist. michael@0: */ michael@0: void deleteProperty(in AString name); michael@0: };