Files
tubestation/testing/web-platform/tests/interfaces/notifications.idl
github-actions[bot] f0033ed92b Bug 1834299 [wpt PR 40125] - Sync interfaces/ with @webref/idl 3.34.1, a=testonly
Automatic update from web-platform-tests
Sync interfaces/ with @webref/idl 3.34.1 (#40125)

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

wpt-commits: 6119a0d0f7ea080dbdc345ea33b0c1b01e3d3fd1
wpt-pr: 40125
2023-06-09 09:23:54 +00:00

102 lines
2.9 KiB
Plaintext

// GENERATED CONTENT - DO NOT EDIT
// Content was automatically extracted by Reffy into webref
// (https://github.com/w3c/webref)
// Source: Notifications API Standard (https://notifications.spec.whatwg.org/)
[Exposed=(Window,Worker)]
interface Notification : EventTarget {
constructor(DOMString title, optional NotificationOptions options = {});
static readonly attribute NotificationPermission permission;
[Exposed=Window] static Promise<NotificationPermission> requestPermission(optional NotificationPermissionCallback deprecatedCallback);
static readonly attribute unsigned long maxActions;
attribute EventHandler onclick;
attribute EventHandler onshow;
attribute EventHandler onerror;
attribute EventHandler onclose;
readonly attribute DOMString title;
readonly attribute NotificationDirection dir;
readonly attribute DOMString lang;
readonly attribute DOMString body;
readonly attribute DOMString tag;
readonly attribute USVString image;
readonly attribute USVString icon;
readonly attribute USVString badge;
[SameObject] readonly attribute FrozenArray<unsigned long> vibrate;
readonly attribute EpochTimeStamp timestamp;
readonly attribute boolean renotify;
readonly attribute boolean? silent;
readonly attribute boolean requireInteraction;
[SameObject] readonly attribute any data;
[SameObject] readonly attribute FrozenArray<NotificationAction> actions;
undefined close();
};
dictionary NotificationOptions {
NotificationDirection dir = "auto";
DOMString lang = "";
DOMString body = "";
DOMString tag = "";
USVString image;
USVString icon;
USVString badge;
VibratePattern vibrate;
EpochTimeStamp timestamp;
boolean renotify = false;
boolean? silent = null;
boolean requireInteraction = false;
any data = null;
sequence<NotificationAction> actions = [];
};
enum NotificationPermission {
"default",
"denied",
"granted"
};
enum NotificationDirection {
"auto",
"ltr",
"rtl"
};
dictionary NotificationAction {
required DOMString action;
required DOMString title;
USVString icon;
};
callback NotificationPermissionCallback = undefined (NotificationPermission permission);
dictionary GetNotificationOptions {
DOMString tag = "";
};
partial interface ServiceWorkerRegistration {
Promise<undefined> showNotification(DOMString title, optional NotificationOptions options = {});
Promise<sequence<Notification>> getNotifications(optional GetNotificationOptions filter = {});
};
[Exposed=ServiceWorker]
interface NotificationEvent : ExtendableEvent {
constructor(DOMString type, NotificationEventInit eventInitDict);
readonly attribute Notification notification;
readonly attribute DOMString action;
};
dictionary NotificationEventInit : ExtendableEventInit {
required Notification notification;
DOMString action = "";
};
partial interface ServiceWorkerGlobalScope {
attribute EventHandler onnotificationclick;
attribute EventHandler onnotificationclose;
};