diff --git a/spec/Overview.html b/spec/Overview.html
index 1d098e0..7ae6339 100644
--- a/spec/Overview.html
+++ b/spec/Overview.html
@@ -1231,52 +1231,77 @@
SubtleCrypto interface
[SecureContext,Exposed=(Window,Worker)]
interface SubtleCrypto {
- Promise<any> encrypt(AlgorithmIdentifier algorithm,
- CryptoKey key,
- BufferSource data);
- Promise<any> decrypt(AlgorithmIdentifier algorithm,
- CryptoKey key,
- BufferSource data);
- Promise<any> sign(AlgorithmIdentifier algorithm,
- CryptoKey key,
- BufferSource data);
- Promise<any> verify(AlgorithmIdentifier algorithm,
- CryptoKey key,
- BufferSource signature,
- BufferSource data);
- Promise<any> digest(AlgorithmIdentifier algorithm,
- BufferSource data);
-
- Promise<any> generateKey(AlgorithmIdentifier algorithm,
- boolean extractable,
- sequence<KeyUsage> keyUsages );
- Promise<any> deriveKey(AlgorithmIdentifier algorithm,
- CryptoKey baseKey,
- AlgorithmIdentifier derivedKeyType,
- boolean extractable,
- sequence<KeyUsage> keyUsages );
- Promise<ArrayBuffer> deriveBits(AlgorithmIdentifier algorithm,
- CryptoKey baseKey,
- optional unsigned long? length = null);
-
- Promise<CryptoKey> importKey(KeyFormat format,
- (BufferSource or JsonWebKey) keyData,
- AlgorithmIdentifier algorithm,
- boolean extractable,
- sequence<KeyUsage> keyUsages );
- Promise<any> exportKey(KeyFormat format, CryptoKey key);
-
- Promise<any> wrapKey(KeyFormat format,
- CryptoKey key,
- CryptoKey wrappingKey,
- AlgorithmIdentifier wrapAlgorithm);
- Promise<CryptoKey> unwrapKey(KeyFormat format,
- BufferSource wrappedKey,
- CryptoKey unwrappingKey,
- AlgorithmIdentifier unwrapAlgorithm,
- AlgorithmIdentifier unwrappedKeyAlgorithm,
- boolean extractable,
- sequence<KeyUsage> keyUsages );
+ Promise<ArrayBuffer> encrypt(
+ AlgorithmIdentifier algorithm,
+ CryptoKey key,
+ BufferSource data
+ );
+ Promise<ArrayBuffer> decrypt(
+ AlgorithmIdentifier algorithm,
+ CryptoKey key,
+ BufferSource data
+ );
+ Promise<ArrayBuffer> sign(
+ AlgorithmIdentifier algorithm,
+ CryptoKey key,
+ BufferSource data
+ );
+ Promise<boolean> verify(
+ AlgorithmIdentifier algorithm,
+ CryptoKey key,
+ BufferSource signature,
+ BufferSource data
+ );
+ Promise<ArrayBuffer> digest(
+ AlgorithmIdentifier algorithm,
+ BufferSource data
+ );
+
+ Promise<(CryptoKey or CryptoKeyPair)> generateKey(
+ AlgorithmIdentifier algorithm,
+ boolean extractable,
+ sequence<KeyUsage> keyUsages
+ );
+ Promise<CryptoKey> deriveKey(
+ AlgorithmIdentifier algorithm,
+ CryptoKey baseKey,
+ AlgorithmIdentifier derivedKeyType,
+ boolean extractable,
+ sequence<KeyUsage> keyUsages
+ );
+ Promise<ArrayBuffer> deriveBits(
+ AlgorithmIdentifier algorithm,
+ CryptoKey baseKey,
+ optional unsigned long? length = null
+ );
+
+ Promise<CryptoKey> importKey(
+ KeyFormat format,
+ (BufferSource or JsonWebKey) keyData,
+ AlgorithmIdentifier algorithm,
+ boolean extractable,
+ sequence<KeyUsage> keyUsages
+ );
+ Promise<(ArrayBuffer or JsonWebKey)> exportKey(
+ KeyFormat format,
+ CryptoKey key
+ );
+
+ Promise<ArrayBuffer> wrapKey(
+ KeyFormat format,
+ CryptoKey key,
+ CryptoKey wrappingKey,
+ AlgorithmIdentifier wrapAlgorithm
+ );
+ Promise<CryptoKey> unwrapKey(
+ KeyFormat format,
+ BufferSource wrappedKey,
+ CryptoKey unwrappingKey,
+ AlgorithmIdentifier unwrapAlgorithm,
+ AlgorithmIdentifier unwrappedKeyAlgorithm,
+ boolean extractable,
+ sequence<KeyUsage> keyUsages
+ );
};