/** * PayPal Server SDKLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { lazy, object, optional, Schema } from '../schema.js'; import { ApplePayPaymentObject, applePayPaymentObjectSchema, } from './applePayPaymentObject.js'; import { CardResponse, cardResponseSchema } from './cardResponse.js'; import { GooglePayWalletResponse, googlePayWalletResponseSchema, } from './googlePayWalletResponse.js'; import { PaypalWalletResponse, paypalWalletResponseSchema, } from './paypalWalletResponse.js'; import { VenmoWalletResponse, venmoWalletResponseSchema, } from './venmoWalletResponse.js'; /** The payment source used to fund the payment. */ export interface OrderAuthorizeResponsePaymentSource { /** The payment card to use to fund a payment. Card can be a credit or debit card. */ card?: CardResponse; /** The PayPal Wallet response. */ paypal?: PaypalWalletResponse; /** Information needed to pay using ApplePay. */ applePay?: ApplePayPaymentObject; /** Google Pay Wallet payment data. */ googlePay?: GooglePayWalletResponse; /** Venmo wallet response. */ venmo?: VenmoWalletResponse; } export const orderAuthorizeResponsePaymentSourceSchema: Schema = lazy( () => object({ card: ['card', optional(cardResponseSchema)], paypal: ['paypal', optional(paypalWalletResponseSchema)], applePay: ['apple_pay', optional(applePayPaymentObjectSchema)], googlePay: ['google_pay', optional(googlePayWalletResponseSchema)], venmo: ['venmo', optional(venmoWalletResponseSchema)], }) );