Files
tubestation/testing/web-platform/tests/interfaces/push-api.idl
moz-wptsync-bot 401bb9e0dd Bug 1664225 - [wpt-sync] Update web-platform-tests to 55e3f8d27d6be17fa75bebe426c39cc51b3b26d4, a=testonly, r=karlcow
A bug in the wptsync caused us to miss some pushes during recent
updates. This commit copies the head of wpt at the specified revision
over and re-applies local patches that weren't in that revision. That
means we should be able to resume normal syncs after fixing the bug.

wpt-head: 55e3f8d27d6be17fa75bebe426c39cc51b3b26d4
wpt-type: landing

Differential Revision: https://phabricator.services.mozilla.com/D90823
2020-09-21 12:53:13 +00:00

96 lines
2.7 KiB
Plaintext

// GENERATED CONTENT - DO NOT EDIT
// Content was automatically extracted by Reffy into webref
// (https://github.com/w3c/webref)
// Source: Push API (https://w3c.github.io/push-api/)
[SecureContext]
partial interface ServiceWorkerRegistration {
readonly attribute PushManager pushManager;
};
[Exposed=(Window,Worker), SecureContext]
interface PushManager {
[SameObject] static readonly attribute FrozenArray<DOMString> supportedContentEncodings;
Promise<PushSubscription> subscribe(optional PushSubscriptionOptionsInit options = {});
Promise<PushSubscription?> getSubscription();
Promise<PushPermissionState> permissionState(optional PushSubscriptionOptionsInit options = {});
};
[Exposed=(Window,Worker), SecureContext]
interface PushSubscriptionOptions {
readonly attribute boolean userVisibleOnly;
[SameObject] readonly attribute ArrayBuffer? applicationServerKey;
};
dictionary PushSubscriptionOptionsInit {
boolean userVisibleOnly = false;
(BufferSource or DOMString)? applicationServerKey = null;
};
[Exposed=(Window,Worker), SecureContext]
interface PushSubscription {
readonly attribute USVString endpoint;
readonly attribute DOMTimeStamp? expirationTime;
[SameObject] readonly attribute PushSubscriptionOptions options;
ArrayBuffer? getKey(PushEncryptionKeyName name);
Promise<boolean> unsubscribe();
PushSubscriptionJSON toJSON();
};
dictionary PushSubscriptionJSON {
USVString endpoint;
DOMTimeStamp? expirationTime;
record<DOMString, USVString> keys;
};
enum PushEncryptionKeyName {
"p256dh",
"auth"
};
[Exposed=ServiceWorker, SecureContext]
interface PushMessageData {
ArrayBuffer arrayBuffer();
Blob blob();
any json();
USVString text();
};
[Exposed=ServiceWorker, SecureContext]
partial interface ServiceWorkerGlobalScope {
attribute EventHandler onpush;
attribute EventHandler onpushsubscriptionchange;
};
[Exposed=ServiceWorker, SecureContext]
interface PushEvent : ExtendableEvent {
constructor(DOMString type, optional PushEventInit eventInitDict = {});
readonly attribute PushMessageData? data;
};
typedef (BufferSource or USVString) PushMessageDataInit;
dictionary PushEventInit : ExtendableEventInit {
PushMessageDataInit data;
};
[Exposed=ServiceWorker, SecureContext]
interface PushSubscriptionChangeEvent : ExtendableEvent {
constructor(DOMString type, optional PushSubscriptionChangeEventInit eventInitDict = {});
readonly attribute PushSubscription? newSubscription;
readonly attribute PushSubscription? oldSubscription;
};
dictionary PushSubscriptionChangeEventInit : ExtendableEventInit {
PushSubscription newSubscription = null;
PushSubscription oldSubscription = null;
};
enum PushPermissionState {
"denied",
"granted",
"prompt",
};