mirror of
https://github.com/rustwasm/wasm-bindgen.git
synced 2024-12-01 06:46:20 +03:00
71255acf5d
* Try to enable all webidls * Separate out unavailable webidl files by reason. * Create record of fully tested WebIDL files * Update notes to reflect new situation with web-idl * Make a blank ident fail, disable the necessary widls. It turns out that all the blank idents came from blank enum variants, which is allowed in webidl apparently.
55 lines
1.2 KiB
Plaintext
Vendored
55 lines
1.2 KiB
Plaintext
Vendored
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* The origin of this IDL file is
|
|
* https://w3c.github.io/push-api/
|
|
*/
|
|
|
|
// invalid widl
|
|
// interface Principal;
|
|
|
|
enum PushEncryptionKeyName
|
|
{
|
|
"p256dh",
|
|
"auth"
|
|
};
|
|
|
|
dictionary PushSubscriptionKeys
|
|
{
|
|
ByteString p256dh;
|
|
ByteString auth;
|
|
};
|
|
|
|
dictionary PushSubscriptionJSON
|
|
{
|
|
USVString endpoint;
|
|
PushSubscriptionKeys keys;
|
|
};
|
|
|
|
dictionary PushSubscriptionInit
|
|
{
|
|
required USVString endpoint;
|
|
required USVString scope;
|
|
ArrayBuffer? p256dhKey;
|
|
ArrayBuffer? authSecret;
|
|
BufferSource? appServerKey;
|
|
};
|
|
|
|
[Exposed=(Window,Worker), Func="mozilla::dom::DOMPrefs::PushEnabled",
|
|
ChromeConstructor(PushSubscriptionInit initDict)]
|
|
interface PushSubscription
|
|
{
|
|
readonly attribute USVString endpoint;
|
|
readonly attribute PushSubscriptionOptions options;
|
|
[Throws]
|
|
ArrayBuffer? getKey(PushEncryptionKeyName name);
|
|
[Throws, UseCounter]
|
|
Promise<boolean> unsubscribe();
|
|
|
|
// Implements the custom serializer specified in Push API, section 9.
|
|
[Throws]
|
|
PushSubscriptionJSON toJSON();
|
|
};
|