@@ -8,6 +8,19 @@ interface AddEventListenerOptions extends EventListenerOptions {
88    signal?: AbortSignal;
99}
1010
11+ interface AddressErrors {
12+     addressLine?: string;
13+     city?: string;
14+     country?: string;
15+     dependentLocality?: string;
16+     organization?: string;
17+     phone?: string;
18+     postalCode?: string;
19+     recipient?: string;
20+     region?: string;
21+     sortingCode?: string;
22+ }
23+ 
1124interface AesCbcParams extends Algorithm {
1225    iv: BufferSource;
1326}
@@ -1091,6 +1104,12 @@ interface PannerOptions extends AudioNodeOptions {
10911104    rolloffFactor?: number;
10921105}
10931106
1107+ interface PayerErrors {
1108+     email?: string;
1109+     name?: string;
1110+     phone?: string;
1111+ }
1112+ 
10941113interface PaymentCurrencyAmount {
10951114    currency: string;
10961115    value: string;
@@ -1099,6 +1118,7 @@ interface PaymentCurrencyAmount {
10991118interface PaymentDetailsBase {
11001119    displayItems?: PaymentItem[];
11011120    modifiers?: PaymentDetailsModifier[];
1121+     shippingOptions?: PaymentShippingOption[];
11021122}
11031123
11041124interface PaymentDetailsInit extends PaymentDetailsBase {
@@ -1114,7 +1134,9 @@ interface PaymentDetailsModifier {
11141134}
11151135
11161136interface PaymentDetailsUpdate extends PaymentDetailsBase {
1137+     error?: string;
11171138    paymentMethodErrors?: any;
1139+     shippingAddressErrors?: AddressErrors;
11181140    total?: PaymentItem;
11191141}
11201142
@@ -1134,12 +1156,28 @@ interface PaymentMethodData {
11341156    supportedMethods: string;
11351157}
11361158
1159+ interface PaymentOptions {
1160+     requestPayerEmail?: boolean;
1161+     requestPayerName?: boolean;
1162+     requestPayerPhone?: boolean;
1163+     requestShipping?: boolean;
1164+     shippingType?: PaymentShippingType;
1165+ }
1166+ 
11371167interface PaymentRequestUpdateEventInit extends EventInit {
11381168}
11391169
1170+ interface PaymentShippingOption {
1171+     amount: PaymentCurrencyAmount;
1172+     id: string;
1173+     label: string;
1174+     selected?: boolean;
1175+ }
1176+ 
11401177interface PaymentValidationErrors {
11411178    error?: string;
1142-     paymentMethod?: any;
1179+     payer?: PayerErrors;
1180+     shippingAddress?: AddressErrors;
11431181}
11441182
11451183interface Pbkdf2Params extends Algorithm {
@@ -1189,6 +1227,8 @@ interface PlaneLayout {
11891227}
11901228
11911229interface PointerEventInit extends MouseEventInit {
1230+     altitudeAngle?: number;
1231+     azimuthAngle?: number;
11921232    coalescedEvents?: PointerEvent[];
11931233    height?: number;
11941234    isPrimary?: boolean;
@@ -8720,7 +8760,7 @@ interface FontFace {
87208760
87218761declare var FontFace: {
87228762    prototype: FontFace;
8723-     new(family: string, source: string | BinaryData , descriptors?: FontFaceDescriptors): FontFace;
8763+     new(family: string, source: string | BufferSource , descriptors?: FontFaceDescriptors): FontFace;
87248764};
87258765
87268766interface FontFaceSetEventMap {
@@ -16731,6 +16771,37 @@ declare var Path2D: {
1673116771    new(path?: Path2D | string): Path2D;
1673216772};
1673316773
16774+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress) */
16775+ interface PaymentAddress {
16776+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/addressLine) */
16777+     readonly addressLine: ReadonlyArray<string>;
16778+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/city) */
16779+     readonly city: string;
16780+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/country) */
16781+     readonly country: string;
16782+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/dependentLocality) */
16783+     readonly dependentLocality: string;
16784+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/organization) */
16785+     readonly organization: string;
16786+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/phone) */
16787+     readonly phone: string;
16788+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/postalCode) */
16789+     readonly postalCode: string;
16790+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/recipient) */
16791+     readonly recipient: string;
16792+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/region) */
16793+     readonly region: string;
16794+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/sortingCode) */
16795+     readonly sortingCode: string;
16796+     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContactAddress/toJSON) */
16797+     toJSON(): any;
16798+ }
16799+ 
16800+ declare var PaymentAddress: {
16801+     prototype: PaymentAddress;
16802+     new(): PaymentAddress;
16803+ };
16804+ 
1673416805/**
1673516806 * Available only in secure contexts.
1673616807 *
@@ -16750,6 +16821,8 @@ declare var PaymentMethodChangeEvent: {
1675016821
1675116822interface PaymentRequestEventMap {
1675216823    "paymentmethodchange": Event;
16824+     "shippingaddresschange": Event;
16825+     "shippingoptionchange": Event;
1675316826}
1675416827
1675516828/**
@@ -16763,6 +16836,36 @@ interface PaymentRequest extends EventTarget {
1676316836    readonly id: string;
1676416837    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/paymentmethodchange_event) */
1676516838    onpaymentmethodchange: ((this: PaymentRequest, ev: Event) => any) | null;
16839+     /**
16840+      * @deprecated
16841+      *
16842+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingaddresschange_event)
16843+      */
16844+     onshippingaddresschange: ((this: PaymentRequest, ev: Event) => any) | null;
16845+     /**
16846+      * @deprecated
16847+      *
16848+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingoptionchange_event)
16849+      */
16850+     onshippingoptionchange: ((this: PaymentRequest, ev: Event) => any) | null;
16851+     /**
16852+      * @deprecated
16853+      *
16854+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingAddress)
16855+      */
16856+     readonly shippingAddress: PaymentAddress | null;
16857+     /**
16858+      * @deprecated
16859+      *
16860+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingOption)
16861+      */
16862+     readonly shippingOption: string | null;
16863+     /**
16864+      * @deprecated
16865+      *
16866+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingType)
16867+      */
16868+     readonly shippingType: PaymentShippingType | null;
1676616869    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/abort) */
1676716870    abort(): Promise<void>;
1676816871    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/canMakePayment) */
@@ -16777,7 +16880,7 @@ interface PaymentRequest extends EventTarget {
1677716880
1677816881declare var PaymentRequest: {
1677916882    prototype: PaymentRequest;
16780-     new(methodData: PaymentMethodData[], details: PaymentDetailsInit): PaymentRequest;
16883+     new(methodData: PaymentMethodData[], details: PaymentDetailsInit, options?: PaymentOptions ): PaymentRequest;
1678116884};
1678216885
1678316886/**
@@ -16796,6 +16899,10 @@ declare var PaymentRequestUpdateEvent: {
1679616899    new(type: string, eventInitDict?: PaymentRequestUpdateEventInit): PaymentRequestUpdateEvent;
1679716900};
1679816901
16902+ interface PaymentResponseEventMap {
16903+     "payerdetailchange": Event;
16904+ }
16905+ 
1679916906/**
1680016907 * This Payment Request API interface is returned after a user selects a payment method and approves a payment request.
1680116908 * Available only in secure contexts.
@@ -16807,14 +16914,54 @@ interface PaymentResponse extends EventTarget {
1680716914    readonly details: any;
1680816915    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/methodName) */
1680916916    readonly methodName: string;
16917+     /**
16918+      * @deprecated
16919+      *
16920+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerdetailchange_event)
16921+      */
16922+     onpayerdetailchange: ((this: PaymentResponse, ev: Event) => any) | null;
16923+     /**
16924+      * @deprecated
16925+      *
16926+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerEmail)
16927+      */
16928+     readonly payerEmail: string | null;
16929+     /**
16930+      * @deprecated
16931+      *
16932+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerName)
16933+      */
16934+     readonly payerName: string | null;
16935+     /**
16936+      * @deprecated
16937+      *
16938+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerPhone)
16939+      */
16940+     readonly payerPhone: string | null;
1681016941    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/requestId) */
1681116942    readonly requestId: string;
16943+     /**
16944+      * @deprecated
16945+      *
16946+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/shippingAddress)
16947+      */
16948+     readonly shippingAddress: PaymentAddress | null;
16949+     /**
16950+      * @deprecated
16951+      *
16952+      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/shippingOption)
16953+      */
16954+     readonly shippingOption: string | null;
1681216955    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/complete) */
1681316956    complete(result?: PaymentComplete): Promise<void>;
1681416957    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/retry) */
1681516958    retry(errorFields?: PaymentValidationErrors): Promise<void>;
1681616959    /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/toJSON) */
1681716960    toJSON(): any;
16961+     addEventListener<K extends keyof PaymentResponseEventMap>(type: K, listener: (this: PaymentResponse, ev: PaymentResponseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16962+     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16963+     removeEventListener<K extends keyof PaymentResponseEventMap>(type: K, listener: (this: PaymentResponse, ev: PaymentResponseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16964+     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1681816965}
1681916966
1682016967declare var PaymentResponse: {
@@ -27985,7 +28132,6 @@ type AutoFill = AutoFillBase | `${OptionalPrefixToken<AutoFillSection>}${Optiona
2798528132type AutoFillField = AutoFillNormalField | `${OptionalPrefixToken<AutoFillContactKind>}${AutoFillContactField}`;
2798628133type AutoFillSection = `section-${string}`;
2798728134type BigInteger = Uint8Array;
27988- type BinaryData = ArrayBuffer | ArrayBufferView;
2798928135type BlobPart = BufferSource | Blob | string;
2799028136type BodyInit = ReadableStream | XMLHttpRequestBodyInit;
2799128137type BufferSource = ArrayBufferView | ArrayBuffer;
@@ -28154,6 +28300,7 @@ type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle";
2815428300type OverSampleType = "2x" | "4x" | "none";
2815528301type PanningModelType = "HRTF" | "equalpower";
2815628302type PaymentComplete = "fail" | "success" | "unknown";
28303+ type PaymentShippingType = "delivery" | "pickup" | "shipping";
2815728304type PermissionName = "geolocation" | "midi" | "notifications" | "persistent-storage" | "push" | "screen-wake-lock" | "storage-access";
2815828305type PermissionState = "denied" | "granted" | "prompt";
2815928306type PlaybackDirection = "alternate" | "alternate-reverse" | "normal" | "reverse";
0 commit comments