1 module libwasm.bindings.PaymentRequest;
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.PaymentResponse;
10 
11 @safe:
12 nothrow:
13 
14 struct AddressErrors {
15   nothrow:
16   JsHandle handle;
17   alias handle this;
18   this(Handle h) {
19     this.handle = JsHandle(h);
20   }
21   static auto create() {
22     return AddressErrors(libwasm_add__object());
23   }
24   void addressLine()(string addressLine) {
25     Object_Call_string__void(this.handle, "addressLine", addressLine);
26   }
27   string addressLine()() {
28     return Object_Getter__string(this.handle, "addressLine");
29   }
30   void city()(string city) {
31     Object_Call_string__void(this.handle, "city", city);
32   }
33   string city()() {
34     return Object_Getter__string(this.handle, "city");
35   }
36   void country()(string country) {
37     Object_Call_string__void(this.handle, "country", country);
38   }
39   string country()() {
40     return Object_Getter__string(this.handle, "country");
41   }
42   void dependentLocality()(string dependentLocality) {
43     Object_Call_string__void(this.handle, "dependentLocality", dependentLocality);
44   }
45   string dependentLocality()() {
46     return Object_Getter__string(this.handle, "dependentLocality");
47   }
48   void organization()(string organization) {
49     Object_Call_string__void(this.handle, "organization", organization);
50   }
51   string organization()() {
52     return Object_Getter__string(this.handle, "organization");
53   }
54   void phone()(string phone) {
55     Object_Call_string__void(this.handle, "phone", phone);
56   }
57   string phone()() {
58     return Object_Getter__string(this.handle, "phone");
59   }
60   void postalCode()(string postalCode) {
61     Object_Call_string__void(this.handle, "postalCode", postalCode);
62   }
63   string postalCode()() {
64     return Object_Getter__string(this.handle, "postalCode");
65   }
66   void recipient()(string recipient) {
67     Object_Call_string__void(this.handle, "recipient", recipient);
68   }
69   string recipient()() {
70     return Object_Getter__string(this.handle, "recipient");
71   }
72   void region()(string region) {
73     Object_Call_string__void(this.handle, "region", region);
74   }
75   string region()() {
76     return Object_Getter__string(this.handle, "region");
77   }
78   void regionCode()(string regionCode) {
79     Object_Call_string__void(this.handle, "regionCode", regionCode);
80   }
81   string regionCode()() {
82     return Object_Getter__string(this.handle, "regionCode");
83   }
84   void sortingCode()(string sortingCode) {
85     Object_Call_string__void(this.handle, "sortingCode", sortingCode);
86   }
87   string sortingCode()() {
88     return Object_Getter__string(this.handle, "sortingCode");
89   }
90 }
91 struct PayerErrors {
92   nothrow:
93   JsHandle handle;
94   alias handle this;
95   this(Handle h) {
96     this.handle = JsHandle(h);
97   }
98   static auto create() {
99     return PayerErrors(libwasm_add__object());
100   }
101   void email()(string email) {
102     Object_Call_string__void(this.handle, "email", email);
103   }
104   string email()() {
105     return Object_Getter__string(this.handle, "email");
106   }
107   void name()(string name) {
108     Object_Call_string__void(this.handle, "name", name);
109   }
110   string name()() {
111     return Object_Getter__string(this.handle, "name");
112   }
113   void phone()(string phone) {
114     Object_Call_string__void(this.handle, "phone", phone);
115   }
116   string phone()() {
117     return Object_Getter__string(this.handle, "phone");
118   }
119 }
120 struct PaymentCurrencyAmount {
121   nothrow:
122   JsHandle handle;
123   alias handle this;
124   this(Handle h) {
125     this.handle = JsHandle(h);
126   }
127   static auto create() {
128     return PaymentCurrencyAmount(libwasm_add__object());
129   }
130   void currency()(string currency) {
131     Object_Call_string__void(this.handle, "currency", currency);
132   }
133   string currency()() {
134     return Object_Getter__string(this.handle, "currency");
135   }
136   void value()(string value) {
137     Object_Call_string__void(this.handle, "value", value);
138   }
139   string value()() {
140     return Object_Getter__string(this.handle, "value");
141   }
142 }
143 struct PaymentDetailsBase {
144   nothrow:
145   JsHandle handle;
146   alias handle this;
147   this(Handle h) {
148     this.handle = JsHandle(h);
149   }
150   static auto create() {
151     return PaymentDetailsBase(libwasm_add__object());
152   }
153   void displayItems()(scope ref Sequence!(PaymentItem) displayItems) {
154     Object_Call_Handle__void(this.handle, "displayItems", displayItems.handle);
155   }
156   auto displayItems()() {
157     return Sequence!(PaymentItem)(Object_Getter__Handle(this.handle, "displayItems"));
158   }
159   void shippingOptions()(scope ref Sequence!(PaymentShippingOption) shippingOptions) {
160     Object_Call_Handle__void(this.handle, "shippingOptions", shippingOptions.handle);
161   }
162   auto shippingOptions()() {
163     return Sequence!(PaymentShippingOption)(Object_Getter__Handle(this.handle, "shippingOptions"));
164   }
165   void modifiers()(scope ref Sequence!(PaymentDetailsModifier) modifiers) {
166     Object_Call_Handle__void(this.handle, "modifiers", modifiers.handle);
167   }
168   auto modifiers()() {
169     return Sequence!(PaymentDetailsModifier)(Object_Getter__Handle(this.handle, "modifiers"));
170   }
171 }
172 struct PaymentDetailsInit {
173   nothrow:
174   libwasm.bindings.PaymentRequest.PaymentDetailsBase _parent;
175   alias _parent this;
176   this(Handle h) {
177     _parent = .PaymentDetailsBase(h);
178   }
179   static auto create() {
180     return PaymentDetailsInit(libwasm_add__object());
181   }
182   void id()(string id) {
183     Object_Call_string__void(this._parent, "id", id);
184   }
185   string id()() {
186     return Object_Getter__string(this._parent, "id");
187   }
188   void total()(scope ref PaymentItem total) {
189     Object_Call_Handle__void(this._parent, "total", total.handle);
190   }
191   auto total()() {
192     return PaymentItem(Object_Getter__Handle(this._parent, "total"));
193   }
194 }
195 struct PaymentDetailsModifier {
196   nothrow:
197   JsHandle handle;
198   alias handle this;
199   this(Handle h) {
200     this.handle = JsHandle(h);
201   }
202   static auto create() {
203     return PaymentDetailsModifier(libwasm_add__object());
204   }
205   void supportedMethods()(string supportedMethods) {
206     Object_Call_string__void(this.handle, "supportedMethods", supportedMethods);
207   }
208   string supportedMethods()() {
209     return Object_Getter__string(this.handle, "supportedMethods");
210   }
211   void total()(scope ref PaymentItem total) {
212     Object_Call_Handle__void(this.handle, "total", total.handle);
213   }
214   auto total()() {
215     return PaymentItem(Object_Getter__Handle(this.handle, "total"));
216   }
217   void additionalDisplayItems()(scope ref Sequence!(PaymentItem) additionalDisplayItems) {
218     Object_Call_Handle__void(this.handle, "additionalDisplayItems", additionalDisplayItems.handle);
219   }
220   auto additionalDisplayItems()() {
221     return Sequence!(PaymentItem)(Object_Getter__Handle(this.handle, "additionalDisplayItems"));
222   }
223   void data()(scope ref JsObject data) {
224     Object_Call_Handle__void(this.handle, "data", data.handle);
225   }
226   auto data()() {
227     return JsObject(Object_Getter__Handle(this.handle, "data"));
228   }
229 }
230 struct PaymentDetailsUpdate {
231   nothrow:
232   libwasm.bindings.PaymentRequest.PaymentDetailsBase _parent;
233   alias _parent this;
234   this(Handle h) {
235     _parent = .PaymentDetailsBase(h);
236   }
237   static auto create() {
238     return PaymentDetailsUpdate(libwasm_add__object());
239   }
240   void error()(string error) {
241     Object_Call_string__void(this._parent, "error", error);
242   }
243   string error()() {
244     return Object_Getter__string(this._parent, "error");
245   }
246   void shippingAddressErrors()(scope ref AddressErrors shippingAddressErrors) {
247     Object_Call_Handle__void(this._parent, "shippingAddressErrors", shippingAddressErrors.handle);
248   }
249   auto shippingAddressErrors()() {
250     return AddressErrors(Object_Getter__Handle(this._parent, "shippingAddressErrors"));
251   }
252   void payerErrors()(scope ref PayerErrors payerErrors) {
253     Object_Call_Handle__void(this._parent, "payerErrors", payerErrors.handle);
254   }
255   auto payerErrors()() {
256     return PayerErrors(Object_Getter__Handle(this._parent, "payerErrors"));
257   }
258   void paymentMethodErrors()(scope ref JsObject paymentMethodErrors) {
259     Object_Call_Handle__void(this._parent, "paymentMethodErrors", paymentMethodErrors.handle);
260   }
261   auto paymentMethodErrors()() {
262     return JsObject(Object_Getter__Handle(this._parent, "paymentMethodErrors"));
263   }
264   void total()(scope ref PaymentItem total) {
265     Object_Call_Handle__void(this._parent, "total", total.handle);
266   }
267   auto total()() {
268     return PaymentItem(Object_Getter__Handle(this._parent, "total"));
269   }
270 }
271 struct PaymentItem {
272   nothrow:
273   JsHandle handle;
274   alias handle this;
275   this(Handle h) {
276     this.handle = JsHandle(h);
277   }
278   static auto create() {
279     return PaymentItem(libwasm_add__object());
280   }
281   void label()(string label) {
282     Object_Call_string__void(this.handle, "label", label);
283   }
284   string label()() {
285     return Object_Getter__string(this.handle, "label");
286   }
287   void amount()(scope ref PaymentCurrencyAmount amount) {
288     Object_Call_Handle__void(this.handle, "amount", amount.handle);
289   }
290   auto amount()() {
291     return PaymentCurrencyAmount(Object_Getter__Handle(this.handle, "amount"));
292   }
293   void pending()(bool pending) {
294     Object_Call_bool__void(this.handle, "pending", pending);
295   }
296   bool pending()() {
297     return Object_Getter__bool(this.handle, "pending");
298   }
299 }
300 struct PaymentMethodData {
301   nothrow:
302   JsHandle handle;
303   alias handle this;
304   this(Handle h) {
305     this.handle = JsHandle(h);
306   }
307   static auto create() {
308     return PaymentMethodData(libwasm_add__object());
309   }
310   void supportedMethods()(string supportedMethods) {
311     Object_Call_string__void(this.handle, "supportedMethods", supportedMethods);
312   }
313   string supportedMethods()() {
314     return Object_Getter__string(this.handle, "supportedMethods");
315   }
316   void data()(scope ref JsObject data) {
317     Object_Call_Handle__void(this.handle, "data", data.handle);
318   }
319   auto data()() {
320     return JsObject(Object_Getter__Handle(this.handle, "data"));
321   }
322 }
323 struct PaymentOptions {
324   nothrow:
325   JsHandle handle;
326   alias handle this;
327   this(Handle h) {
328     this.handle = JsHandle(h);
329   }
330   static auto create() {
331     return PaymentOptions(libwasm_add__object());
332   }
333   void requestPayerName()(bool requestPayerName) {
334     Object_Call_bool__void(this.handle, "requestPayerName", requestPayerName);
335   }
336   bool requestPayerName()() {
337     return Object_Getter__bool(this.handle, "requestPayerName");
338   }
339   void requestPayerEmail()(bool requestPayerEmail) {
340     Object_Call_bool__void(this.handle, "requestPayerEmail", requestPayerEmail);
341   }
342   bool requestPayerEmail()() {
343     return Object_Getter__bool(this.handle, "requestPayerEmail");
344   }
345   void requestPayerPhone()(bool requestPayerPhone) {
346     Object_Call_bool__void(this.handle, "requestPayerPhone", requestPayerPhone);
347   }
348   bool requestPayerPhone()() {
349     return Object_Getter__bool(this.handle, "requestPayerPhone");
350   }
351   void requestShipping()(bool requestShipping) {
352     Object_Call_bool__void(this.handle, "requestShipping", requestShipping);
353   }
354   bool requestShipping()() {
355     return Object_Getter__bool(this.handle, "requestShipping");
356   }
357   void requestBillingAddress()(bool requestBillingAddress) {
358     Object_Call_bool__void(this.handle, "requestBillingAddress", requestBillingAddress);
359   }
360   bool requestBillingAddress()() {
361     return Object_Getter__bool(this.handle, "requestBillingAddress");
362   }
363   void shippingType()(PaymentShippingType shippingType) {
364     Object_Call_int__void(this.handle, "shippingType", shippingType);
365   }
366   PaymentShippingType shippingType()() {
367     return Object_Getter__int(this.handle, "shippingType");
368   }
369 }
370 struct PaymentRequest {
371   nothrow:
372   libwasm.bindings.EventTarget.EventTarget _parent;
373   alias _parent this;
374   this(Handle h) {
375     _parent = .EventTarget(h);
376   }
377   auto show()(scope ref JsPromise!(PaymentDetailsUpdate) detailsPromise) {
378     return JsPromise!(PaymentResponse)(Object_Call_Handle__Handle(this._parent, "show", detailsPromise.handle));
379   }
380   auto show()() {
381     return JsPromise!(PaymentResponse)(Object_Getter__Handle(this._parent, "show"));
382   }
383   auto abort()() {
384     return JsPromise!(void)(Object_Getter__Handle(this._parent, "abort"));
385   }
386   auto canMakePayment()() {
387     return JsPromise!(bool)(Object_Getter__Handle(this._parent, "canMakePayment"));
388   }
389   string id()() {
390     return Object_Getter__string(this._parent, "id");
391   }
392   auto shippingAddress()() {
393     return recastOpt!(PaymentAddress)(Object_Getter__OptionalHandle(this._parent, "shippingAddress"));
394   }
395   Optional!(string) shippingOption()() {
396     return Object_Getter__OptionalString(this._parent, "shippingOption");
397   }
398   Optional!(PaymentShippingType) shippingType()() {
399     return PaymentRequest_shippingType_Get(this._parent);
400   }
401   void onmerchantvalidation(T0)(scope auto ref Optional!(T0) onmerchantvalidation) if (isTOrPointer!(T0, EventHandlerNonNull)) {
402     Object_Call_EventHandler__void(this._parent, "onmerchantvalidation", !onmerchantvalidation.empty, onmerchantvalidation.front);
403   }
404   EventHandler onmerchantvalidation()() {
405     return Object_Getter__EventHandler(this._parent, "onmerchantvalidation");
406   }
407   void onshippingaddresschange(T0)(scope auto ref Optional!(T0) onshippingaddresschange) if (isTOrPointer!(T0, EventHandlerNonNull)) {
408     Object_Call_EventHandler__void(this._parent, "onshippingaddresschange", !onshippingaddresschange.empty, onshippingaddresschange.front);
409   }
410   EventHandler onshippingaddresschange()() {
411     return Object_Getter__EventHandler(this._parent, "onshippingaddresschange");
412   }
413   void onshippingoptionchange(T0)(scope auto ref Optional!(T0) onshippingoptionchange) if (isTOrPointer!(T0, EventHandlerNonNull)) {
414     Object_Call_EventHandler__void(this._parent, "onshippingoptionchange", !onshippingoptionchange.empty, onshippingoptionchange.front);
415   }
416   EventHandler onshippingoptionchange()() {
417     return Object_Getter__EventHandler(this._parent, "onshippingoptionchange");
418   }
419   void onpaymentmethodchange(T0)(scope auto ref Optional!(T0) onpaymentmethodchange) if (isTOrPointer!(T0, EventHandlerNonNull)) {
420     Object_Call_EventHandler__void(this._parent, "onpaymentmethodchange", !onpaymentmethodchange.empty, onpaymentmethodchange.front);
421   }
422   EventHandler onpaymentmethodchange()() {
423     return Object_Getter__EventHandler(this._parent, "onpaymentmethodchange");
424   }
425 }
426 struct PaymentShippingOption {
427   nothrow:
428   JsHandle handle;
429   alias handle this;
430   this(Handle h) {
431     this.handle = JsHandle(h);
432   }
433   static auto create() {
434     return PaymentShippingOption(libwasm_add__object());
435   }
436   void id()(string id) {
437     Object_Call_string__void(this.handle, "id", id);
438   }
439   string id()() {
440     return Object_Getter__string(this.handle, "id");
441   }
442   void label()(string label) {
443     Object_Call_string__void(this.handle, "label", label);
444   }
445   string label()() {
446     return Object_Getter__string(this.handle, "label");
447   }
448   void amount()(scope ref PaymentCurrencyAmount amount) {
449     Object_Call_Handle__void(this.handle, "amount", amount.handle);
450   }
451   auto amount()() {
452     return PaymentCurrencyAmount(Object_Getter__Handle(this.handle, "amount"));
453   }
454   void selected()(bool selected) {
455     Object_Call_bool__void(this.handle, "selected", selected);
456   }
457   bool selected()() {
458     return Object_Getter__bool(this.handle, "selected");
459   }
460 }
461 enum PaymentShippingType {
462   shipping,
463   delivery,
464   pickup
465 }
466 struct PaymentValidationErrors {
467   nothrow:
468   JsHandle handle;
469   alias handle this;
470   this(Handle h) {
471     this.handle = JsHandle(h);
472   }
473   static auto create() {
474     return PaymentValidationErrors(libwasm_add__object());
475   }
476   void payer()(scope ref PayerErrors payer) {
477     Object_Call_Handle__void(this.handle, "payer", payer.handle);
478   }
479   auto payer()() {
480     return PayerErrors(Object_Getter__Handle(this.handle, "payer"));
481   }
482   void shippingAddress()(scope ref AddressErrors shippingAddress) {
483     Object_Call_Handle__void(this.handle, "shippingAddress", shippingAddress.handle);
484   }
485   auto shippingAddress()() {
486     return AddressErrors(Object_Getter__Handle(this.handle, "shippingAddress"));
487   }
488   void error()(string error) {
489     Object_Call_string__void(this.handle, "error", error);
490   }
491   string error()() {
492     return Object_Getter__string(this.handle, "error");
493   }
494   void paymentMethod()(scope ref JsObject paymentMethod) {
495     Object_Call_Handle__void(this.handle, "paymentMethod", paymentMethod.handle);
496   }
497   auto paymentMethod()() {
498     return JsObject(Object_Getter__Handle(this.handle, "paymentMethod"));
499   }
500 }
501 
502 
503 extern (C) Optional!(PaymentShippingType) PaymentRequest_shippingType_Get(Handle);