blob: 9e6a943a92a62f6518728690e489348533a35529 [file] [log] [blame]
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// Generated from Web IDL definitions.
import 'dart:js_interop';
import 'payment_request.dart';
import 'service_workers.dart';
typedef PaymentDelegation = String;
typedef PaymentShippingType = String;
@JS('PaymentManager')
@staticInterop
class PaymentManager {}
extension PaymentManagerExtension on PaymentManager {
external JSPromise enableDelegations(JSArray delegations);
external set userHint(String value);
external String get userHint;
}
@JS('CanMakePaymentEvent')
@staticInterop
class CanMakePaymentEvent implements ExtendableEvent {
external factory CanMakePaymentEvent(String type);
}
extension CanMakePaymentEventExtension on CanMakePaymentEvent {
external void respondWith(JSPromise canMakePaymentResponse);
}
@JS()
@staticInterop
@anonymous
class PaymentRequestDetailsUpdate {
external factory PaymentRequestDetailsUpdate({
String error,
PaymentCurrencyAmount total,
JSArray modifiers,
JSArray shippingOptions,
JSObject paymentMethodErrors,
AddressErrors shippingAddressErrors,
});
}
extension PaymentRequestDetailsUpdateExtension on PaymentRequestDetailsUpdate {
external set error(String value);
external String get error;
external set total(PaymentCurrencyAmount value);
external PaymentCurrencyAmount get total;
external set modifiers(JSArray value);
external JSArray get modifiers;
external set shippingOptions(JSArray value);
external JSArray get shippingOptions;
external set paymentMethodErrors(JSObject value);
external JSObject get paymentMethodErrors;
external set shippingAddressErrors(AddressErrors value);
external AddressErrors get shippingAddressErrors;
}
@JS('PaymentRequestEvent')
@staticInterop
class PaymentRequestEvent implements ExtendableEvent {
external factory PaymentRequestEvent(
String type, [
PaymentRequestEventInit eventInitDict,
]);
}
extension PaymentRequestEventExtension on PaymentRequestEvent {
external JSPromise openWindow(String url);
external JSPromise changePaymentMethod(
String methodName, [
JSObject? methodDetails,
]);
external JSPromise changeShippingAddress([AddressInit shippingAddress]);
external JSPromise changeShippingOption(String shippingOption);
external void respondWith(JSPromise handlerResponsePromise);
external String get topOrigin;
external String get paymentRequestOrigin;
external String get paymentRequestId;
external JSArray get methodData;
external JSObject get total;
external JSArray get modifiers;
external JSObject? get paymentOptions;
external JSArray? get shippingOptions;
}
@JS()
@staticInterop
@anonymous
class PaymentRequestEventInit implements ExtendableEventInit {
external factory PaymentRequestEventInit({
String topOrigin,
String paymentRequestOrigin,
String paymentRequestId,
JSArray methodData,
PaymentCurrencyAmount total,
JSArray modifiers,
PaymentOptions paymentOptions,
JSArray shippingOptions,
});
}
extension PaymentRequestEventInitExtension on PaymentRequestEventInit {
external set topOrigin(String value);
external String get topOrigin;
external set paymentRequestOrigin(String value);
external String get paymentRequestOrigin;
external set paymentRequestId(String value);
external String get paymentRequestId;
external set methodData(JSArray value);
external JSArray get methodData;
external set total(PaymentCurrencyAmount value);
external PaymentCurrencyAmount get total;
external set modifiers(JSArray value);
external JSArray get modifiers;
external set paymentOptions(PaymentOptions value);
external PaymentOptions get paymentOptions;
external set shippingOptions(JSArray value);
external JSArray get shippingOptions;
}
@JS()
@staticInterop
@anonymous
class PaymentHandlerResponse {
external factory PaymentHandlerResponse({
String methodName,
JSObject details,
String? payerName,
String? payerEmail,
String? payerPhone,
AddressInit shippingAddress,
String? shippingOption,
});
}
extension PaymentHandlerResponseExtension on PaymentHandlerResponse {
external set methodName(String value);
external String get methodName;
external set details(JSObject value);
external JSObject get details;
external set payerName(String? value);
external String? get payerName;
external set payerEmail(String? value);
external String? get payerEmail;
external set payerPhone(String? value);
external String? get payerPhone;
external set shippingAddress(AddressInit value);
external AddressInit get shippingAddress;
external set shippingOption(String? value);
external String? get shippingOption;
}
@JS()
@staticInterop
@anonymous
class AddressInit {
external factory AddressInit({
String country,
JSArray addressLine,
String region,
String city,
String dependentLocality,
String postalCode,
String sortingCode,
String organization,
String recipient,
String phone,
});
}
extension AddressInitExtension on AddressInit {
external set country(String value);
external String get country;
external set addressLine(JSArray value);
external JSArray get addressLine;
external set region(String value);
external String get region;
external set city(String value);
external String get city;
external set dependentLocality(String value);
external String get dependentLocality;
external set postalCode(String value);
external String get postalCode;
external set sortingCode(String value);
external String get sortingCode;
external set organization(String value);
external String get organization;
external set recipient(String value);
external String get recipient;
external set phone(String value);
external String get phone;
}
@JS()
@staticInterop
@anonymous
class PaymentOptions {
external factory PaymentOptions({
bool requestPayerName,
bool requestBillingAddress,
bool requestPayerEmail,
bool requestPayerPhone,
bool requestShipping,
PaymentShippingType shippingType,
});
}
extension PaymentOptionsExtension on PaymentOptions {
external set requestPayerName(bool value);
external bool get requestPayerName;
external set requestBillingAddress(bool value);
external bool get requestBillingAddress;
external set requestPayerEmail(bool value);
external bool get requestPayerEmail;
external set requestPayerPhone(bool value);
external bool get requestPayerPhone;
external set requestShipping(bool value);
external bool get requestShipping;
external set shippingType(PaymentShippingType value);
external PaymentShippingType get shippingType;
}
@JS()
@staticInterop
@anonymous
class PaymentShippingOption {
external factory PaymentShippingOption({
required String id,
required String label,
required PaymentCurrencyAmount amount,
bool selected,
});
}
extension PaymentShippingOptionExtension on PaymentShippingOption {
external set id(String value);
external String get id;
external set label(String value);
external String get label;
external set amount(PaymentCurrencyAmount value);
external PaymentCurrencyAmount get amount;
external set selected(bool value);
external bool get selected;
}
@JS()
@staticInterop
@anonymous
class AddressErrors {
external factory AddressErrors({
String addressLine,
String city,
String country,
String dependentLocality,
String organization,
String phone,
String postalCode,
String recipient,
String region,
String sortingCode,
});
}
extension AddressErrorsExtension on AddressErrors {
external set addressLine(String value);
external String get addressLine;
external set city(String value);
external String get city;
external set country(String value);
external String get country;
external set dependentLocality(String value);
external String get dependentLocality;
external set organization(String value);
external String get organization;
external set phone(String value);
external String get phone;
external set postalCode(String value);
external String get postalCode;
external set recipient(String value);
external String get recipient;
external set region(String value);
external String get region;
external set sortingCode(String value);
external String get sortingCode;
}