blob: c66fe36bd9d01383a4b3f926c2355e9be4bbd8a7 [file] [log] [blame]
// Copyright 2014 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.
// Specification at:
// https://w3c.github.io/permissions/
[
Exposed=(Window,Worker),
RuntimeEnabled=Permissions
] interface Permissions {
[CallWith=ScriptState, RaisesException, Measure] Promise<PermissionStatus> query(object permission);
// Non standard APIs
[RuntimeEnabled=PermissionsRequestRevoke, CallWith=ScriptState, RaisesException, Measure] Promise<PermissionStatus> request(object permissions);
[RuntimeEnabled=PermissionsRequestRevoke, CallWith=ScriptState, RaisesException, Measure] Promise<PermissionStatus> revoke(object permission);
[RuntimeEnabled=PermissionsRequestRevoke, CallWith=ScriptState, RaisesException, Measure] Promise<sequence<PermissionStatus>> requestAll(sequence<object> permissions);
};