/** * 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 { ApplePayPaymentToken, applePayPaymentTokenSchema, } from './applePayPaymentToken.js'; import { CardPaymentTokenEntity, cardPaymentTokenEntitySchema, } from './cardPaymentTokenEntity.js'; import { PaypalPaymentToken, paypalPaymentTokenSchema, } from './paypalPaymentToken.js'; import { VenmoPaymentToken, venmoPaymentTokenSchema, } from './venmoPaymentToken.js'; /** The vaulted payment method details. */ export interface PaymentTokenResponsePaymentSource { /** Full representation of a Card Payment Token including network token. */ card?: CardPaymentTokenEntity; /** Full representation of a PayPal Payment Token. */ paypal?: PaypalPaymentToken; /** Full representation of a Venmo Payment Token. */ venmo?: VenmoPaymentToken; /** A resource representing a response for Apple Pay. */ applePay?: ApplePayPaymentToken; } export const paymentTokenResponsePaymentSourceSchema: Schema = lazy( () => object({ card: ['card', optional(cardPaymentTokenEntitySchema)], paypal: ['paypal', optional(paypalPaymentTokenSchema)], venmo: ['venmo', optional(venmoPaymentTokenSchema)], applePay: ['apple_pay', optional(applePayPaymentTokenSchema)], }) );