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 "curve25519dh" |
| 9 }; |
| 10 |
7 [ | 11 [ |
8 Exposed=(Window,ServiceWorker), | 12 Exposed=(Window,ServiceWorker), |
9 GarbageCollected, | 13 GarbageCollected, |
10 RuntimeEnabled=PushMessaging, | 14 RuntimeEnabled=PushMessaging, |
11 ] interface PushSubscription { | 15 ] interface PushSubscription { |
12 readonly attribute USVString endpoint; | 16 readonly attribute USVString endpoint; |
| 17 |
| 18 // TODO(peter): Remove this once the embedder updates to getKey(). |
13 [RuntimeEnabled=PushMessagingData] readonly attribute ArrayBuffer curve25519
dh; | 19 [RuntimeEnabled=PushMessagingData] readonly attribute ArrayBuffer curve25519
dh; |
14 | 20 |
| 21 [RuntimeEnabled=PushMessagingData] ArrayBuffer? getKey(PushEncryptionKeyName
name); |
15 [CallWith=ScriptState] Promise<boolean> unsubscribe(); | 22 [CallWith=ScriptState] Promise<boolean> unsubscribe(); |
16 | 23 |
17 serializer = { attribute }; | 24 serializer = { attribute }; |
18 }; | 25 }; |
OLD | NEW |