Trait SubtleCryptoMethods
Source pub(crate) trait SubtleCryptoMethods<D>{
// Required methods
fn Encrypt(
&self,
cx: JSContext,
algorithm: ObjectOrString,
key: &<D as DomTypes>::CryptoKey,
data: ArrayBufferViewOrArrayBuffer,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn Decrypt(
&self,
cx: JSContext,
algorithm: ObjectOrString,
key: &<D as DomTypes>::CryptoKey,
data: ArrayBufferViewOrArrayBuffer,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn Sign(
&self,
cx: JSContext,
algorithm: ObjectOrString,
key: &<D as DomTypes>::CryptoKey,
data: ArrayBufferViewOrArrayBuffer,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn Verify(
&self,
cx: JSContext,
algorithm: ObjectOrString,
key: &<D as DomTypes>::CryptoKey,
signature: ArrayBufferViewOrArrayBuffer,
data: ArrayBufferViewOrArrayBuffer,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn Digest(
&self,
cx: JSContext,
algorithm: ObjectOrString,
data: ArrayBufferViewOrArrayBuffer,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn GenerateKey(
&self,
cx: JSContext,
algorithm: ObjectOrString,
extractable: bool,
keyUsages: Vec<KeyUsage>,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn DeriveKey(
&self,
cx: JSContext,
algorithm: ObjectOrString,
baseKey: &<D as DomTypes>::CryptoKey,
derivedKeyType: ObjectOrString,
extractable: bool,
keyUsages: Vec<KeyUsage>,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn DeriveBits(
&self,
cx: JSContext,
algorithm: ObjectOrString,
baseKey: &<D as DomTypes>::CryptoKey,
length: Option<u32>,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn ImportKey(
&self,
cx: JSContext,
format: KeyFormat,
keyData: ArrayBufferViewOrArrayBufferOrJsonWebKey,
algorithm: ObjectOrString,
extractable: bool,
keyUsages: Vec<KeyUsage>,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn ExportKey(
&self,
format: KeyFormat,
key: &<D as DomTypes>::CryptoKey,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn WrapKey(
&self,
cx: JSContext,
format: KeyFormat,
key: &<D as DomTypes>::CryptoKey,
wrappingKey: &<D as DomTypes>::CryptoKey,
wrapAlgorithm: ObjectOrString,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
fn UnwrapKey(
&self,
cx: JSContext,
format: KeyFormat,
wrappedKey: ArrayBufferViewOrArrayBuffer,
unwrappingKey: &<D as DomTypes>::CryptoKey,
unwrapAlgorithm: ObjectOrString,
unwrappedKeyAlgorithm: ObjectOrString,
extractable: bool,
keyUsages: Vec<KeyUsage>,
_comp: InRealm<'_>,
_can_gc: CanGc,
) -> Rc<<D as DomTypes>::Promise>;
}