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 { |
| 8 "p256dh", |
| 9 "auth" |
| 10 }; |
| 11 |
7 [ | 12 [ |
8 Exposed=(Window,ServiceWorker), | 13 Exposed=(Window,ServiceWorker), |
9 GarbageCollected, | 14 GarbageCollected, |
10 RuntimeEnabled=PushMessaging, | 15 RuntimeEnabled=PushMessaging, |
11 ] interface PushSubscription { | 16 ] interface PushSubscription { |
12 readonly attribute USVString endpoint; | 17 readonly attribute USVString endpoint; |
| 18 |
| 19 [RuntimeEnabled=PushMessagingData] ArrayBuffer? getKey(PushEncryptionKeyName
name); |
13 [CallWith=ScriptState] Promise<boolean> unsubscribe(); | 20 [CallWith=ScriptState] Promise<boolean> unsubscribe(); |
14 | 21 |
15 serializer = { attribute }; | 22 serializer; |
16 }; | 23 }; |
OLD | NEW |