OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // https://w3c.github.io/push-api/#pushsubscription-interface | 5 // https://w3c.github.io/push-api/#pushsubscription-interface |
6 | 6 |
7 enum PushEncryptionKeyName { | 7 enum PushEncryptionKeyName { |
8 "p256dh", | 8 "p256dh", |
9 "auth" | 9 "auth" |
10 }; | 10 }; |
11 | 11 |
12 [ | 12 [ |
13 Exposed=(Window,ServiceWorker), | 13 Exposed=(Window,Worker), |
14 RuntimeEnabled=PushMessaging, | 14 RuntimeEnabled=PushMessaging, |
15 ] interface PushSubscription { | 15 ] interface PushSubscription { |
16 readonly attribute USVString endpoint; | 16 readonly attribute USVString endpoint; |
17 [SameObject] readonly attribute PushSubscriptionOptions options; | 17 [SameObject] readonly attribute PushSubscriptionOptions options; |
18 | 18 |
19 ArrayBuffer? getKey(PushEncryptionKeyName name); | 19 ArrayBuffer? getKey(PushEncryptionKeyName name); |
20 [CallWith=ScriptState] Promise<boolean> unsubscribe(); | 20 [CallWith=ScriptState] Promise<boolean> unsubscribe(); |
21 | 21 |
22 serializer; | 22 serializer; |
23 }; | 23 }; |
OLD | NEW |