blob: bff43870a46b7b56757f2b5666dd304d14368666 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// https://wicg.github.io/file-system-access/#enumdef-filesystemhandlekind
enum FileSystemHandleKind {
"file",
"directory",
};
// https://wicg.github.io/file-system-access/#filesystemhandle
[
Exposed=(Window,Worker),
SecureContext,
Serializable,
RuntimeEnabled=FileSystemAccess
] interface FileSystemHandle {
// Brand checking APIs because javascript makes it otherwise really hard to
// figure out what type an object is when you don't know in which global
// (i.e. iframe) the object was created.
readonly attribute FileSystemHandleKind kind;
readonly attribute USVString name;
[CallWith=ScriptState] Promise<PermissionState> queryPermission(
optional FileSystemHandlePermissionDescriptor descriptor = {});
[CallWith=ScriptState] Promise<PermissionState> requestPermission(
optional FileSystemHandlePermissionDescriptor descriptor = {});
[CallWith=ScriptState, Measure]
Promise<boolean> isSameEntry(FileSystemHandle other);
};