| // GENERATED CONTENT - DO NOT EDIT |
| // Content was automatically extracted by Reffy into webref |
| // (https://github.com/w3c/webref) |
| // Source: Permissions (https://w3c.github.io/permissions/) |
| |
| dictionary PermissionDescriptor { |
| required PermissionName name; |
| }; |
| |
| enum PermissionState { |
| "granted", |
| "denied", |
| "prompt", |
| }; |
| |
| [Exposed=(Window,Worker)] |
| interface PermissionStatus : EventTarget { |
| readonly attribute PermissionState state; |
| attribute EventHandler onchange; |
| }; |
| |
| [Exposed=(Window)] |
| partial interface Navigator { |
| [SameObject] readonly attribute Permissions permissions; |
| }; |
| |
| [Exposed=(Worker)] |
| partial interface WorkerNavigator { |
| [SameObject] readonly attribute Permissions permissions; |
| }; |
| |
| [Exposed=(Window,Worker)] |
| interface Permissions { |
| Promise<PermissionStatus> query(object permissionDesc); |
| }; |
| |
| enum PermissionName { |
| "accelerometer", |
| "ambient-light-sensor", |
| "background-fetch", |
| "background-sync", |
| "bluetooth", |
| "camera", |
| "clipboard-write", |
| "device-info", |
| "display-capture", |
| "geolocation", |
| "gyroscope", |
| "magnetometer", |
| "microphone", |
| "midi", |
| "nfc", |
| "notifications", |
| "persistent-storage", |
| "push", |
| "speaker-selection", |
| }; |
| |
| dictionary PushPermissionDescriptor : PermissionDescriptor { |
| boolean userVisibleOnly = false; |
| }; |
| |
| dictionary MidiPermissionDescriptor : PermissionDescriptor { |
| boolean sysex = false; |
| }; |
| |
| dictionary DevicePermissionDescriptor : PermissionDescriptor { |
| DOMString deviceId; |
| }; |
| |
| dictionary CameraDevicePermissionDescriptor : DevicePermissionDescriptor { |
| boolean panTiltZoom = false; |
| }; |
| |
| dictionary PermissionSetParameters { |
| required PermissionDescriptor descriptor; |
| required PermissionState state; |
| boolean oneRealm = false; |
| }; |