1 module libwasm.bindings.KeyAlgorithm; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 @safe: 7 nothrow: 8 9 struct AesKeyAlgorithm { 10 nothrow: 11 libwasm.bindings.KeyAlgorithm.KeyAlgorithm _parent; 12 alias _parent this; 13 this(Handle h) { 14 _parent = .KeyAlgorithm(h); 15 } 16 static auto create() { 17 return AesKeyAlgorithm(libwasm_add__object()); 18 } 19 void length()(ushort length) { 20 Serialize_Object_VarArgCall!void(this._parent, "length", "ushort", tuple(length)); 21 } 22 ushort length()() { 23 return Object_Getter__ushort(this._parent, "length"); 24 } 25 } 26 struct DhKeyAlgorithm { 27 nothrow: 28 libwasm.bindings.KeyAlgorithm.KeyAlgorithm _parent; 29 alias _parent this; 30 this(Handle h) { 31 _parent = .KeyAlgorithm(h); 32 } 33 static auto create() { 34 return DhKeyAlgorithm(libwasm_add__object()); 35 } 36 void prime()(scope ref Uint8Array prime) { 37 Object_Call_Handle__void(this._parent, "prime", prime.handle); 38 } 39 auto prime()() { 40 return Uint8Array(Object_Getter__Handle(this._parent, "prime")); 41 } 42 void generator()(scope ref Uint8Array generator) { 43 Object_Call_Handle__void(this._parent, "generator", generator.handle); 44 } 45 auto generator()() { 46 return Uint8Array(Object_Getter__Handle(this._parent, "generator")); 47 } 48 } 49 struct EcKeyAlgorithm { 50 nothrow: 51 libwasm.bindings.KeyAlgorithm.KeyAlgorithm _parent; 52 alias _parent this; 53 this(Handle h) { 54 _parent = .KeyAlgorithm(h); 55 } 56 static auto create() { 57 return EcKeyAlgorithm(libwasm_add__object()); 58 } 59 void namedCurve()(string namedCurve) { 60 Object_Call_string__void(this._parent, "namedCurve", namedCurve); 61 } 62 string namedCurve()() { 63 return Object_Getter__string(this._parent, "namedCurve"); 64 } 65 } 66 struct HmacKeyAlgorithm { 67 nothrow: 68 libwasm.bindings.KeyAlgorithm.KeyAlgorithm _parent; 69 alias _parent this; 70 this(Handle h) { 71 _parent = .KeyAlgorithm(h); 72 } 73 static auto create() { 74 return HmacKeyAlgorithm(libwasm_add__object()); 75 } 76 void hash()(scope ref KeyAlgorithm hash) { 77 Object_Call_Handle__void(this._parent, "hash", hash.handle); 78 } 79 auto hash()() { 80 return KeyAlgorithm(Object_Getter__Handle(this._parent, "hash")); 81 } 82 void length()(uint length) { 83 Object_Call_uint__void(this._parent, "length", length); 84 } 85 uint length()() { 86 return Object_Getter__uint(this._parent, "length"); 87 } 88 } 89 struct KeyAlgorithm { 90 nothrow: 91 JsHandle handle; 92 alias handle this; 93 this(Handle h) { 94 this.handle = JsHandle(h); 95 } 96 static auto create() { 97 return KeyAlgorithm(libwasm_add__object()); 98 } 99 void name()(string name) { 100 Object_Call_string__void(this.handle, "name", name); 101 } 102 string name()() { 103 return Object_Getter__string(this.handle, "name"); 104 } 105 } 106 struct RsaHashedKeyAlgorithm { 107 nothrow: 108 libwasm.bindings.KeyAlgorithm.KeyAlgorithm _parent; 109 alias _parent this; 110 this(Handle h) { 111 _parent = .KeyAlgorithm(h); 112 } 113 static auto create() { 114 return RsaHashedKeyAlgorithm(libwasm_add__object()); 115 } 116 void modulusLength()(ushort modulusLength) { 117 Serialize_Object_VarArgCall!void(this._parent, "modulusLength", "ushort", tuple(modulusLength)); 118 } 119 ushort modulusLength()() { 120 return Object_Getter__ushort(this._parent, "modulusLength"); 121 } 122 void publicExponent()(scope ref Uint8Array publicExponent) { 123 Object_Call_Handle__void(this._parent, "publicExponent", publicExponent.handle); 124 } 125 auto publicExponent()() { 126 return Uint8Array(Object_Getter__Handle(this._parent, "publicExponent")); 127 } 128 void hash()(scope ref KeyAlgorithm hash) { 129 Object_Call_Handle__void(this._parent, "hash", hash.handle); 130 } 131 auto hash()() { 132 return KeyAlgorithm(Object_Getter__Handle(this._parent, "hash")); 133 } 134 } 135 136