1 module libwasm.bindings.PaymentResponse; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.EventHandler; 7 import libwasm.bindings.EventTarget; 8 import libwasm.bindings.PaymentAddress; 9 import libwasm.bindings.PaymentRequest; 10 11 @safe: 12 nothrow: 13 14 enum PaymentComplete { 15 success, 16 fail, 17 unknown 18 } 19 struct PaymentResponse { 20 nothrow: 21 libwasm.bindings.EventTarget.EventTarget _parent; 22 alias _parent this; 23 this(Handle h) { 24 _parent = .EventTarget(h); 25 } 26 auto toJSON()() { 27 return JsObject(Object_Getter__Handle(this._parent, "toJSON")); 28 } 29 string requestId()() { 30 return Object_Getter__string(this._parent, "requestId"); 31 } 32 string methodName()() { 33 return Object_Getter__string(this._parent, "methodName"); 34 } 35 auto details()() { 36 return JsObject(Object_Getter__Handle(this._parent, "details")); 37 } 38 auto shippingAddress()() { 39 return recastOpt!(PaymentAddress)(Object_Getter__OptionalHandle(this._parent, "shippingAddress")); 40 } 41 Optional!(string) shippingOption()() { 42 return Object_Getter__OptionalString(this._parent, "shippingOption"); 43 } 44 Optional!(string) payerName()() { 45 return Object_Getter__OptionalString(this._parent, "payerName"); 46 } 47 Optional!(string) payerEmail()() { 48 return Object_Getter__OptionalString(this._parent, "payerEmail"); 49 } 50 Optional!(string) payerPhone()() { 51 return Object_Getter__OptionalString(this._parent, "payerPhone"); 52 } 53 auto complete()(PaymentComplete result /* = "unknown" */) { 54 return JsPromise!(void)(Object_Call_int__Handle(this._parent, "complete", result)); 55 } 56 auto complete()() { 57 return JsPromise!(void)(Object_Getter__Handle(this._parent, "complete")); 58 } 59 auto retry()(scope ref PaymentValidationErrors errorFields) { 60 return JsPromise!(void)(Object_Call_Handle__Handle(this._parent, "retry", errorFields.handle)); 61 } 62 auto retry()() { 63 return JsPromise!(void)(Object_Getter__Handle(this._parent, "retry")); 64 } 65 void onpayerdetailchange(T0)(scope auto ref Optional!(T0) onpayerdetailchange) if (isTOrPointer!(T0, EventHandlerNonNull)) { 66 Object_Call_EventHandler__void(this._parent, "onpayerdetailchange", !onpayerdetailchange.empty, onpayerdetailchange.front); 67 } 68 EventHandler onpayerdetailchange()() { 69 return Object_Getter__EventHandler(this._parent, "onpayerdetailchange"); 70 } 71 } 72 73