michael@0: /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 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: dictionary DeviceStorageEnumerationParameters { michael@0: Date since; michael@0: }; michael@0: michael@0: interface DeviceStorage : EventTarget { michael@0: attribute EventHandler onchange; michael@0: michael@0: [Throws] michael@0: DOMRequest? add(Blob? aBlob); michael@0: [Throws] michael@0: DOMRequest? addNamed(Blob? aBlob, DOMString aName); michael@0: michael@0: [Throws] michael@0: DOMRequest get(DOMString aName); michael@0: [Throws] michael@0: DOMRequest getEditable(DOMString aName); michael@0: [Throws] michael@0: DOMRequest delete(DOMString aName); michael@0: michael@0: [Throws] michael@0: DOMCursor enumerate(optional DeviceStorageEnumerationParameters options); michael@0: [Throws] michael@0: DOMCursor enumerate(DOMString path, michael@0: optional DeviceStorageEnumerationParameters options); michael@0: [Throws] michael@0: DOMCursor enumerateEditable(optional DeviceStorageEnumerationParameters options); michael@0: [Throws] michael@0: DOMCursor enumerateEditable(DOMString path, michael@0: optional DeviceStorageEnumerationParameters options); michael@0: michael@0: [Throws] michael@0: DOMRequest freeSpace(); michael@0: [Throws] michael@0: DOMRequest usedSpace(); michael@0: [Throws] michael@0: DOMRequest available(); michael@0: [Throws] michael@0: DOMRequest storageStatus(); michael@0: [Throws] michael@0: DOMRequest format(); michael@0: [Throws] michael@0: DOMRequest mount(); michael@0: [Throws] michael@0: DOMRequest unmount(); michael@0: michael@0: // Note that the storageName is just a name (like sdcard), and doesn't michael@0: // include any path information. michael@0: readonly attribute DOMString storageName; michael@0: michael@0: // Determines if this storage area is the one which will be used by default michael@0: // for storing new files. michael@0: readonly attribute boolean default; michael@0: michael@0: [NewObject] michael@0: Promise getRoot(); michael@0: };