Files
sousa-gecko/testing/web-platform/tests/interfaces/fs.idl
T
github-actions[bot] a573649c53 Bug 1979892 [wpt PR 54029] - Sync interfaces/ with @webref/idl 3.66.2, a=testonly
Automatic update from web-platform-tests
Sync interfaces/ with @webref/idl 3.66.2 (#54029)

Co-authored-by: wpt-pr-bot <wpt-pr-bot@users.noreply.github.com>
--

wpt-commits: 14c7ae5dd9a2c7f726ed51f968dc2340cb4fbe74
wpt-pr: 54029
2025-08-28 09:10:05 +00:00

98 lines
2.9 KiB
Plaintext

// 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<boolean> isSameEntry(FileSystemHandle other);
};
dictionary FileSystemCreateWritableOptions {
boolean keepExistingData = false;
};
[Exposed=(Window,Worker), SecureContext, Serializable]
interface FileSystemFileHandle : FileSystemHandle {
Promise<File> getFile();
Promise<FileSystemWritableFileStream> createWritable(optional FileSystemCreateWritableOptions options = {});
[Exposed=DedicatedWorker]
Promise<FileSystemSyncAccessHandle> 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<USVString, FileSystemHandle>;
Promise<FileSystemFileHandle> getFileHandle(USVString name, optional FileSystemGetFileOptions options = {});
Promise<FileSystemDirectoryHandle> getDirectoryHandle(USVString name, optional FileSystemGetDirectoryOptions options = {});
Promise<undefined> removeEntry(USVString name, optional FileSystemRemoveOptions options = {});
Promise<sequence<USVString>?> 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<undefined> write(FileSystemWriteChunkType data);
Promise<undefined> seek(unsigned long long position);
Promise<undefined> truncate(unsigned long long size);
};
dictionary FileSystemReadWriteOptions {
[EnforceRange] unsigned long long at;
};
[Exposed=DedicatedWorker, SecureContext]
interface FileSystemSyncAccessHandle {
unsigned long long read(AllowSharedBufferSource buffer,
optional FileSystemReadWriteOptions options = {});
unsigned long long write(AllowSharedBufferSource buffer,
optional FileSystemReadWriteOptions options = {});
undefined truncate([EnforceRange] unsigned long long newSize);
unsigned long long getSize();
undefined flush();
undefined close();
};
[SecureContext]
partial interface StorageManager {
Promise<FileSystemDirectoryHandle> getDirectory();
};