| // GENERATED CONTENT - DO NOT EDIT |
| // Content was automatically extracted by Reffy into webref |
| // (https://github.com/w3c/webref) |
| // Source: Payment Request API (https://w3c.github.io/payment-request/) |
| |
| [SecureContext, Exposed=Window] |
| interface PaymentRequest : EventTarget { |
| constructor( |
| sequence<PaymentMethodData> methodData, |
| PaymentDetailsInit details |
| ); |
| [NewObject] |
| Promise<PaymentResponse> show(optional Promise<PaymentDetailsUpdate> detailsPromise); |
| [NewObject] |
| Promise<undefined> abort(); |
| [NewObject] |
| Promise<boolean> canMakePayment(); |
| |
| readonly attribute DOMString id; |
| |
| attribute EventHandler onpaymentmethodchange; |
| }; |
| |
| dictionary PaymentMethodData { |
| required DOMString supportedMethods; |
| object data; |
| }; |
| |
| dictionary PaymentCurrencyAmount { |
| required DOMString currency; |
| required DOMString value; |
| }; |
| |
| dictionary PaymentDetailsBase { |
| sequence<PaymentItem> displayItems; |
| sequence<PaymentDetailsModifier> modifiers; |
| }; |
| |
| dictionary PaymentDetailsInit : PaymentDetailsBase { |
| DOMString id; |
| required PaymentItem total; |
| }; |
| |
| dictionary PaymentDetailsUpdate : PaymentDetailsBase { |
| PaymentItem total; |
| object paymentMethodErrors; |
| }; |
| |
| dictionary PaymentDetailsModifier { |
| required DOMString supportedMethods; |
| PaymentItem total; |
| sequence<PaymentItem> additionalDisplayItems; |
| object data; |
| }; |
| |
| dictionary PaymentItem { |
| required DOMString label; |
| required PaymentCurrencyAmount amount; |
| boolean pending = false; |
| }; |
| |
| enum PaymentComplete { |
| "fail", |
| "success", |
| "unknown" |
| }; |
| |
| [SecureContext, Exposed=Window] |
| interface PaymentResponse : EventTarget { |
| [Default] object toJSON(); |
| |
| readonly attribute DOMString requestId; |
| readonly attribute DOMString methodName; |
| readonly attribute object details; |
| |
| [NewObject] |
| Promise<undefined> complete(optional PaymentComplete result = "unknown"); |
| [NewObject] |
| Promise<undefined> retry(optional PaymentValidationErrors errorFields = {}); |
| }; |
| |
| dictionary PaymentValidationErrors { |
| DOMString error; |
| object paymentMethod; |
| }; |
| |
| [SecureContext, Exposed=Window] |
| interface PaymentMethodChangeEvent : PaymentRequestUpdateEvent { |
| constructor(DOMString type, optional PaymentMethodChangeEventInit eventInitDict = {}); |
| readonly attribute DOMString methodName; |
| readonly attribute object? methodDetails; |
| }; |
| |
| dictionary PaymentMethodChangeEventInit : PaymentRequestUpdateEventInit { |
| DOMString methodName = ""; |
| object? methodDetails = null; |
| }; |
| |
| [SecureContext, Exposed=Window] |
| interface PaymentRequestUpdateEvent : Event { |
| constructor(DOMString type, optional PaymentRequestUpdateEventInit eventInitDict = {}); |
| undefined updateWith(Promise<PaymentDetailsUpdate> detailsPromise); |
| }; |
| |
| dictionary PaymentRequestUpdateEventInit : EventInit {}; |
| |
| [SecureContext, Exposed=(Window)] |
| interface PaymentAddress { |
| [Default] object toJSON(); |
| readonly attribute DOMString city; |
| readonly attribute DOMString country; |
| readonly attribute DOMString dependentLocality; |
| readonly attribute DOMString organization; |
| readonly attribute DOMString phone; |
| readonly attribute DOMString postalCode; |
| readonly attribute DOMString recipient; |
| readonly attribute DOMString region; |
| readonly attribute DOMString sortingCode; |
| readonly attribute FrozenArray<DOMString> addressLine; |
| }; |
| |
| dictionary AddressErrors { |
| DOMString addressLine; |
| DOMString city; |
| DOMString country; |
| DOMString dependentLocality; |
| DOMString organization; |
| DOMString phone; |
| DOMString postalCode; |
| DOMString recipient; |
| DOMString region; |
| DOMString sortingCode; |
| }; |