// GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into webref // (https://github.com/w3c/webref) // Source: Modern Algorithms in the Web Cryptography API (https://wicg.github.io/webcrypto-modern-algos/) [SecureContext,Exposed=(Window,Worker)] partial interface SubtleCrypto { Promise encapsulateKey( AlgorithmIdentifier encapsulationAlgorithm, CryptoKey encapsulationKey, AlgorithmIdentifier sharedKeyAlgorithm, boolean extractable, sequence keyUsages ); Promise encapsulateBits( AlgorithmIdentifier encapsulationAlgorithm, CryptoKey encapsulationKey ); Promise decapsulateKey( AlgorithmIdentifier decapsulationAlgorithm, CryptoKey decapsulationKey, BufferSource ciphertext, AlgorithmIdentifier sharedKeyAlgorithm, boolean extractable, sequence keyUsages ); Promise decapsulateBits( AlgorithmIdentifier decapsulationAlgorithm, CryptoKey decapsulationKey, BufferSource ciphertext ); Promise getPublicKey( CryptoKey key, sequence keyUsages ); static boolean supports(DOMString operation, AlgorithmIdentifier algorithm, optional unsigned long? length = null); static boolean supports(DOMString operation, AlgorithmIdentifier algorithm, AlgorithmIdentifier additionalAlgorithm); }; enum KeyFormat { "raw-public", "raw-private", "raw-seed", "raw-secret", "raw", "spki", "pkcs8", "jwk" }; enum KeyUsage { "encrypt", "decrypt", "sign", "verify", "deriveKey", "deriveBits", "wrapKey", "unwrapKey", "encapsulateKey", "encapsulateBits", "decapsulateKey", "decapsulateBits" }; dictionary EncapsulatedKey { CryptoKey sharedKey; ArrayBuffer ciphertext; }; dictionary EncapsulatedBits { ArrayBuffer sharedKey; ArrayBuffer ciphertext; }; partial dictionary JsonWebKey { // The following fields are defined in draft-ietf-cose-dilithium-07 DOMString pub; DOMString priv; }; dictionary ContextParams : Algorithm { BufferSource context; }; dictionary AeadParams : Algorithm { required BufferSource iv; BufferSource additionalData; [EnforceRange] octet tagLength; }; dictionary CShakeParams : Algorithm { required [EnforceRange] unsigned long length; BufferSource functionName; BufferSource customization; }; dictionary KmacKeyGenParams : Algorithm { [EnforceRange] unsigned long length; }; dictionary KmacImportParams : Algorithm { [EnforceRange] unsigned long length; }; dictionary KmacKeyAlgorithm : KeyAlgorithm { required unsigned long length; }; dictionary KmacParams : Algorithm { required [EnforceRange] unsigned long length; BufferSource customization; }; dictionary Argon2Params : Algorithm { required BufferSource nonce; required [EnforceRange] unsigned long parallelism; required [EnforceRange] unsigned long memory; required [EnforceRange] unsigned long passes; [EnforceRange] octet version; BufferSource secretValue; BufferSource associatedData; };