// GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into webref // (https://github.com/w3c/webref) // Source: File System Standard (https://fs.spec.whatwg.org/) enum FileSystemHandleKind { "file", "directory", }; [Exposed=(Window,Worker), SecureContext, Serializable] interface FileSystemHandle { readonly attribute FileSystemHandleKind kind; readonly attribute USVString name; Promise isSameEntry(FileSystemHandle other); }; dictionary FileSystemCreateWritableOptions { boolean keepExistingData = false; }; [Exposed=(Window,Worker), SecureContext, Serializable] interface FileSystemFileHandle : FileSystemHandle { Promise getFile(); Promise createWritable(optional FileSystemCreateWritableOptions options = {}); [Exposed=DedicatedWorker] Promise createSyncAccessHandle(); }; dictionary FileSystemGetFileOptions { boolean create = false; }; dictionary FileSystemGetDirectoryOptions { boolean create = false; }; dictionary FileSystemRemoveOptions { boolean recursive = false; }; [Exposed=(Window,Worker), SecureContext, Serializable] interface FileSystemDirectoryHandle : FileSystemHandle { async iterable; Promise getFileHandle(USVString name, optional FileSystemGetFileOptions options = {}); Promise getDirectoryHandle(USVString name, optional FileSystemGetDirectoryOptions options = {}); Promise removeEntry(USVString name, optional FileSystemRemoveOptions options = {}); Promise?> resolve(FileSystemHandle possibleDescendant); }; enum WriteCommandType { "write", "seek", "truncate", }; dictionary WriteParams { required WriteCommandType type; unsigned long long? size; unsigned long long? position; (BufferSource or Blob or USVString)? data; }; typedef (BufferSource or Blob or USVString or WriteParams) FileSystemWriteChunkType; [Exposed=(Window,Worker), SecureContext] interface FileSystemWritableFileStream : WritableStream { Promise write(FileSystemWriteChunkType data); Promise seek(unsigned long long position); Promise truncate(unsigned long long size); }; dictionary FileSystemReadWriteOptions { [EnforceRange] unsigned long long at = 0; }; [Exposed=DedicatedWorker, SecureContext] interface FileSystemSyncAccessHandle { unsigned long long read([AllowShared] BufferSource buffer, optional FileSystemReadWriteOptions options = {}); unsigned long long write([AllowShared] BufferSource buffer, optional FileSystemReadWriteOptions options = {}); undefined truncate([EnforceRange] unsigned long long newSize); unsigned long long getSize(); undefined flush(); undefined close(); }; [SecureContext] partial interface StorageManager { Promise getDirectory(); };